3-3.API推移の解析

3-3-1.API推移の可視化

これまでAPI抽出や制御フロー解析の結果を比較してきた。関数の呼び出し関係に沿ってAPI呼び出しを抽出したのは、APIの呼び出しの順序に一定の法則があるのではないかという仮定に基づいている。一方、制御フロー解析ではプログラムの流れのみに注目してAPI呼び出しに関しては無視した。しかし制御フロー解析の結果として得られるグラフは大きいため扱いづらい。そこで両者の考え方を融合し使われるAPI呼び出しの推移をグラフにする。グラフはあるAPIが呼び出されたときに次に呼び出されるAPIを示す有向グラフが得られる。

具体的には制御フロー解析の結果を利用してAPI呼び出しを行わないノードをAPI呼び出しを行うノードに融合する。ラベルなしのノードを廃してラベルを持つノードのみにする。例えばグラフ3-3-1-1の場合にはノードb、d、gは消滅する。ノードaからはノードc(a→b→c)とノードe(a→b→d→e)へ、ノードeからはノードe自身(e→d→e)とノードg(e→g)へ、ノードfからはノードe(f→d→e)とノードg(f→g)へエッジが作られる。さらにノードaとノードfは同一のAPIを呼び出しているので統合される。結果、グラフ3-3-1-2のようになる。

グラフ3-3-1-1
digraph "g" {
  "a" -> "b";
  "b" -> "c";
  "b" -> "d";
  "d" -> "e";
  "e" -> "d";
  "e" -> "g";
  "f" -> "d";
  "f" -> "g";
  "a" [label = "a\nApiA"];
  "c" [label = "c\nApiB"];
  "e" [label = "e\nApiC"];
  "f" [label = "f\nApiA"];
  "g" [label = "g\nApiD"];
}

グラフ3-3-1-1

グラフ3-3-1-2
digraph "g" {
  "ApiA" -> "ApiB";
  "ApiA" -> "ApiC";
  "ApiA" -> "ApiD";
  "ApiC" -> "ApiC";
  "ApiC" -> "ApiD";
}

グラフ3-3-1-2

ctlflw.plの出力を読み込んでAPI推移のグラフを作るapiflw.plを作った。W32/Bagleの亜種とW32/Korgoの亜種、W32/Mydoomの亜種、W32/Netskyの亜種、Text maidの各バージョン、ネットワーク関連のプログラムについてapiflw.plを用いてグラフを作った。

表3-3-1-1 W32/Bagleの各亜種のAPI推移グラフ
名称IDA Pro出力Graphvizグラフ
W32/Bagle.A w32bg__a.lstw32bg__a.dotw32bg__a.png
W32/Bagle.B w32bg__b.lstw32bg__b.dotw32bg__b.png
W32/Bagle.C w32bg__c.lstw32bg__c.dotw32bg__c.png
W32/Bagle.D w32bg__d.lstw32bg__d.dotw32bg__d.png
W32/Bagle.J w32bg__j.lstw32bg__j.dotw32bg__j.png
W32/Bagle.K w32bg__k.lstw32bg__k.dotw32bg__k.png
W32/Bagle.N w32bg__n.lstw32bg__n.dotw32bg__n.png
W32/Bagle.P w32bg__p.lstw32bg__p.dotw32bg__p.png
W32/Bagle.Q w32bg__q.lstw32bg__q.dotw32bg__q.png
W32/Bagle.R w32bg__r.lstw32bg__r.dotw32bg__r.png
W32/Bagle.S w32bg__s.lstw32bg__s.dotw32bg__s.png
W32/Bagle.T w32bg__t.lstw32bg__t.dotw32bg__t.png
W32/Bagle.X w32bg__x.lstw32bg__x.dotw32bg__x.png
W32/Bagle.Z w32bg__z.lstw32bg__z.dotw32bg__z.png
W32/Bagle.AA w32bg_aa.lstw32bg_aa.dotw32bg_aa.png
W32/Bagle.AD w32bg_ad.lstw32bg_ad.dotw32bg_ad.png
W32/Bagle#115w32bg115.lstw32bg115.dotw32bg115.png
表3-3-1-2 W32/Korgoの各亜種のAPI推移グラフ
名称IDA Pro出力Graphvizグラフ
W32/Korgo.A w32krg_a.lstw32krg_a.dotw32krg_a.png
W32/Korgo.B w32krg_b.lstw32krg_b.dotw32krg_b.png
W32/Korgo.C w32krg_c.lstw32krg_c.dotw32krg_c.png
W32/Korgo.E w32krg_e.lstw32krg_e.dotw32krg_e.png
W32/Korgo.G w32krg_g.lstw32krg_g.dotw32krg_g.png
W32/Korgo.N w32krg_n.lstw32krg_n.dotw32krg_n.png
W32/Korgo.P w32krg_p.lstw32krg_p.dotw32krg_p.png
W32/Korgo.Q w32krg_q.lstw32krg_q.dotw32krg_q.png
W32/Korgo.R w32krg_r.lstw32krg_r.dotw32krg_r.png
W32/Korgo.S w32krg_s.lstw32krg_s.dotw32krg_s.png
W32/Korgo.T w32krg_t.lstw32krg_t.dotw32krg_t.png
W32/Korgo.V w32krg_v.lstw32krg_v.dotw32krg_v.png
W32/Korgo.Z w32krg_z.lstw32krg_z.dotw32krg_z.png
W32/Korgo.AAw32krgaa.lstw32krgaa.dotw32krgaa.png
W32/Korgo.ABw32krgab.lstw32krgab.dotw32krgab.png
W32/Korgo.ACw32krgac.lstw32krgac.dotw32krgac.png
表3-3-1-3 W32/Mydoomの各亜種のAPI推移グラフ
名称IDA Pro出力Graphvizグラフ
W32/Mydoom.A w32myd_a.lstw32myd_a.dotw32myd_a.png
W32/Mydoom.B w32myd_b.lstw32myd_b.dotw32myd_b.png
W32/Mydoom.F w32myd_f.lstw32myd_f.dotw32myd_f.png
W32/Mydoom.G w32myd_g.lstw32myd_g.dotw32myd_g.png
W32/Mydoom.H w32myd_h.lstw32myd_h.dotw32myd_h.png
W32/Mydoom.L w32myd_l.lstw32myd_l.dotw32myd_l.png
W32/Mydoom.N w32myd_n.lstw32myd_n.dotw32myd_n.png
W32/Mydoom.O w32myd_o.lstw32myd_o.dotw32myd_o.png
W32/Mydoom.R w32myd_r.lstw32myd_r.dotw32myd_r.png
W32/Mydoom.S w32myd_s.lstw32myd_s.dotw32myd_s.png
W32/Mydoom.T w32myd_t.lstw32myd_t.dotw32myd_t.png
W32/Mydoom.X w32myd_x.lstw32myd_x.dotw32myd_x.png
W32/Mydoom.AFw32mydaf.lstw32mydaf.dotw32mydaf.png
W32/Mydoom.AMw32mydam.lstw32mydam.dotw32mydam.png
W32/Mydoom.BHw32mydbh.lstw32mydbh.dotw32mydbh.png
W32/Mydoom.BNw32mydbn.lstw32mydbn.dotw32mydbn.png
W32/Mydoom#46w32myd46.lstw32myd46.dotw32myd46.png
表3-3-1-4 W32/Netskyの各亜種のAPI推移グラフ
名称IDA Pro出力Graphvizグラフ
W32/Netsky.Bw32nts_b.lstw32nts_b.dotw32nts_b.png
W32/Netsky.Lw32nts_l.lstw32nts_l.dotw32nts_l.png
W32/Netsky.Mw32nts_m.lstw32nts_m.dotw32nts_m.png
W32/Netsky.Ow32nts_o.lstw32nts_o.dotw32nts_o.png
W32/Netsky.Ww32nts_w.lstw32nts_w.dotw32nts_w.png
表3-3-1-5 Text maidの各バージョンのAPI推移グラフ
名称IDA Pro出力Graphvizグラフ
Text maid 1.9Etm019eja.lsttm019eja.dot tm019eja.png
Text maid 1.9Ftm019fja.lsttm019fja.dot tm019fja.png
Text maid 1.9Gtm019gja.lsttm019gja.dot tm019gja.png
Text maid 1.9Htm019hja.lsttm019hja.dot tm019hja.png
Text maid 1.9Itm019ija.lsttm019ija.dot tm019ija.png
Text maid 1.9Jtm019jja.lsttm019jja.dot tm019jja.png
Text maid 1.9Ktm019kja.lsttm019kja.dot tm019kja.png
Text maid 1.9Ltm019lja.lsttm019lja.dot tm019lja.png
Text maid 1.9Mtm019mja.lsttm019mja.dot tm019mja.png
Text maid 1.9Ntm019nja.lsttm019nja.dot tm019nja.png
Text maid 1.9Otm019oja.lsttm019oja.dot tm019oja.png
Text maid 1.9Ptm019pja.lsttm019pja.dot tm019pja.png
Text maid 1.9Qtm019qja.lsttm019qja.dot tm019qja.png
Text maid 1.9Rtm019rja.lsttm019rja.dot tm019rja.png
Text maid 1.9Stm019sja.lsttm019sja.dot tm019sja.png
Text maid 1.9Ttm019tja.lsttm019tja.dot tm019tja.png
Text maid 1.9Utm019uja.lsttm019uja.dot tm019uja.png
表3-3-1-6 ネットワーク関連プログラムのAPI推移グラフ
名称IDA Pro出力Graphvizグラフ
fingerfinger.lstfinger.dotfinger.png
ftp ftp.lst ftp.dot ftp.png
ping ping.lst ping.dot ping.png
telnettelnet.lsttelnet.dottelnet.png
tftp tftp.lst tftp.dot tftp.png

3-3-2.API推移の共通構造の発見

API推移の共通構造の発見するためにafcomp.plを作った。これは複数のafcomp.plの出力結果から共通するエッジで構成されるグラフを作成する機能がある。有向グラフを比較して共通構造を発見することは困難だが、API推移の場合にはラベルが同じノードが対応していることが明らかなのでその計算は容易である。

グラフ3-3-2-1はW32/BagleのAPI推移の共通構造、グラフ3-3-2-2はW32/KorgoのAPI推移の共通構造、グラフ3-3-2-3はW32/MydoomのAPI推移の共通構造、グラフ3-3-2-4はW32/NetskyのAPI推移の共通構造、グラフ3-3-2-5Text maidのAPI推移の共通構造である。ネットワーク関連のプログラムにはすべてに共通するAPI推移は存在しない。Text maidはコンピュータウイルスではないが各バージョンを亜種とみなしAPI推移の共通構造を求めた。

グラフ3-3-2-1 W32/BagleのAPI推移の共通構造 グラフ3-3-2-1

グラフ3-3-2-2 W32/KorgoのAPI推移の共通構造 グラフ3-3-2-2

グラフ3-32-3 W32/MydoomのAPI推移の共通構造 グラフ3-3-2-3

グラフ3-3-2-4 W32/NetskyのAPI推移の共通構造 グラフ3-3-2-4

グラフ3-3-2-5 Text maidのAPI推移の共通構造 グラフ3-3-2-5

なお、これらすべてに共通するAPI推移はない。またW32/Bagleの共通構造は少ないがこれはW32/Bagle.C(およびW32/Bagle.D、W32/Bagle.X)が他の亜種に比べて大きく異なるためである。W32/Bagle.Cを除くW32/Bagleの共通構造はグラフ3-3-2-6のようになる。

グラフ3-3-2-6 W32/Bagle(W32/Bagle.Cを除く)のAPI推移の共通構造 グラフ3-3-2-6

同様にW32/MydoomもW32/Mydoom.A、W32/Mydoom.B、W32/Mydoom.S、W32/Mydoom.AGを除くと共通するAPI推移はかなり多くなる。W32/Bagle.Cを除くW32/BagleとW32/Mydoom.A、W32/Mydoom.B、W32/Mydoom.S、W32/Mydoom.AGを除くW32/Mydoomの共通構造はグラフ3-3-2-7のようになる。

グラフ3-3-2-7 一部を除くW32/BagleとW32/MydoomのAPI推移の共通構造 グラフ3-3-2-7

グラフ3-3-2-7を見るとWindowsプログラムとしては定石とも言えるAPIの推移が共通構造となっている。コンピュータウイルスとしての特徴を示しているとは思えない。

3-3-3.API推移の比較

共通するエッジの割合を求めることでAPI推移を比べることを考える。共通するエッジが多いほど検体は似ていると言える。例えばグラフ3-3-1-2グラフ3-3-3-1に共通するエッジはグラフ3-3-3-2になる。

グラフ3-3-3-1
digraph "g" {
  "ApiA" -> "ApiC";
  "ApiA" -> "ApiE";
  "ApiC" -> "ApiA";
  "ApiC" -> "ApiD";
}

グラフ3-3-3-1

グラフ3-3-3-2
digraph "g" {
  "ApiA" -> "ApiC";
  "ApiC" -> "ApiD";
}

グラフ3-3-3-2

API推移を比較するためにafcomp.plに複数のapiflw.plの出力結果からmsaconv.cが読み込み可能なデータを作る機能を加えた。表3-3-3-1はW32/Bagleの各亜種、表3-3-3-2はW32/Korgoの各亜種、表3-3-3-3はW32/Mydoomの各亜種、表3-3-3-4はW32/Netskyの各亜種、表3-3-3-5Text maidの各バージョンについてapiflw.plmsaconv.cを用いて作成した表である。Text maidはコンピュータウイルスではないが各バージョンを亜種とみなし比較を行った。また表3-3-3-6は誤認が生じないか確かめるために各亜種とネットワーク関連のプログラムの比較を行った表である。

2つのAPI推移は完全に一致するときには0となり、まったく一致しないときには10000になる。なお、完全に一致する場合には項目を1つにまとめるため出力結果で距離は0にならない。

表3-3-3-1 W32/Bagleの各亜種間の距離
a c d j k n p q r s x z aa ad
115 86839797979785148413845384538341840783799765837084358337
a 9565956567936842807881257848800779039574746974907791
c 130494889565962096209621962596132549959096359663
d 94889565957695769578958195681836963295939620
j 2256568456255276519152389555491450215743
k 521052714652463247369627427943295084
n 15452456213919739625337334263012
p 2456221719739625344032932796
q 101819289626241526252680
r 19199629276829672887
s 9618291628332672
x 963795989581
z 20332750
aa 1913
表3-3-3-2 W32/Korgoの各亜種間の距離
b c e g n p q r s t v z ab
a 1956331750195241494176317660763153287604753753647720
b 355750765457494177237519772355397509758456277629
c 39604641418373507330711049087224711046647490
e 3048304161926312628935946443609330886306
g 281360776245602830186183597829306335
n 63346159603628195888598529216156
p 3384370059504088353554743025
q 363660213622346958572953
r 60483520284256313282
s 6105585129345874
t 308960913517
v 56833282
z 5909
表3-3-3-3 W32/Mydoomの各亜種間の距離
a b f g h l o r s t af ag am bh bn
46 905772726240635063806754663045047641443553207689602055104586
a 89079212909590049146920991479436900092669090918292238990
b 7723789079608686824281747627737278317014782479257738
f 571451566834632259677794666663528024634071606275
g 40846690644064728318666665747695649173466550
h 6678625060658076644764487916642574506315
l 601569798158695969398636719675006912
o 64547722680464488306685375486480
r 7943483145948047575658974669
s 788277457544795072727632
t 51687898689761384723
af 7627640262394331
ag 702778267478
am 71576137
bh 6042
表3-3-3-4 W32/Netskyの各亜種間の距離
l m o w
b 6080608076026486
l 512 66387194
m 67507285
o 3628
表3-3-3-5 Text maidの各バージョン間の距離
f g h i l o p q s t u
e 36904115384942854062412443224659911489468946
f 3197277931062674260728303380904689388912
g 283530943246312033093427890387858891
h 34453219334532243523893987688848
i 1694262735233345898888758875
l 195128143065896688518851
o 22223127896688248878
p 2836869486448697
q 881886978697
s 36103714
t 2877
表3-3-3-6 全体の距離
ftp ping telnet tftp tm019eja tm019fja tm019gja tm019hja tm019ija tm019jja tm019kjatm019lja tm019mja tm019njatm019oja tm019pja tm019qja tm019rja tm019sja tm019tja tm019uja w32bg115 w32bg__a w32bg__b w32bg__c w32bg__d w32bg__j w32bg__k w32bg__n w32bg__p w32bg__q w32bg__t w32bg__r w32bg__s w32bg__x w32bg__z w32bg_aa w32bg_ad w32krg_a w32krg_b w32krg_c w32krg_e w32krg_g w32krg_n w32krg_p w32krg_q w32krg_r w32krg_s w32krg_t w32krg_v w32krgaa w32krgacw32krg_z w32krgab w32myd46 w32myd_a w32myd_b w32myd_f w32myd_g w32myd_h w32myd_l w32myd_n w32myd_o w32myd_r w32myd_x w32myd_s w32myd_t w32mydaf w32mydag w32mydam w32mydbh w32mydbn w32nts_b w32nts_l w32nts_m w32nts_o w32nts_w
finger 8636 8979 9885 8301 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 9822 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 9734 9734 9747 9756 9761 9752 9784 9782 9784 9766 9781 9784 9765 9790 9866 9555 10000 9788 9744 9732 9728 9787 9797 10000 9759 9735 10000 9829 9888 9743 9669 9489 9489 9423 9596
ftp 9010 9674 8750 9961 9966 9966 9965 9965 9965 9965 9968 9968 9970 9968 9968 9816 9883 9824 9824 9810 9816 9852 9852 9853 9854 9850 9829 9857 9858 9852 9698 9653 9753 9759 9764 9756 9739 9736 9739 9768 9735 9739 9767 9744 9659 9552 9754 9698 9708 9696 9698 9696 9709 9935 9640 9699 9846 9747 9729 9707 9312 9507 9507 9736 9520
ping 10000 8928 9905 9920 9920 9918 9918 9919 9919 9925 9925 10000 10000 10000 9786 9760 9855 9855 10000 9942 9956 9956 9956 9956 9955 9861 9957 9958 9956 9842 9842 9850 9879 9882 9836 9839 9782 9839 9806 9836 9839 9844 9790 9866 9892 9875 9788 9848 9841 9866 9787 9849 9814 9857 9842 9866 9872 9832 9847 9919 9901 9901 9908 9921
telnet 9834 9970 9973 9973 9972 9972 9972 9972 9974 9974 9903 9897 9897 9950 9959 9947 9947 9965 9966 9971 9971 9971 9971 9971 9948 9972 9972 9971 9871 9903 9906 9946 9947 9945 9967 9967 9967 9973 9967 9967 9973 9968 9825 9811 9929 9968 9906 9903 9884 9870 9875 9956 9817 9936 9963 9915 9900 9905 9751 9772 9772 9868 9838
tftp 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 10000 9965 10000 10000 10000 10000 9945 10000 10000 9957 9958 10000 10000 10000 10000 10000 9899 9899 9904 9922 9924 9881 10000 10000 10000 9925 10000 10000 9962 10000 9870 9696 10000 9950 9951 9949 9914 9898 9855 10000 9862 9849 10000 9959 9839 9853 9689 9626 9626 9739 9776
tm019eja 3690 4115 3849 4285 4062 4124 4322 4659 9114 8946 8946 9817 9750 9911 9911 9813 9817 9816 9816 9817 9818 9814 9913 9820 9821 9816 9855 9855 9888 9876 9878 9875 9854 9853 9854 9855 9853 9825 9879 9856 9679 9960 9646 9647 9625 9646 9679 9676 9685 9613 9695 9648 9633 9688 9635 9683 9893 10000 10000 10000 9930
tm019fja 3197 2779 3106 2674 2607 2830 3380 9046 8938 8912 9832 9780 9924 9924 9833 9836 9833 9833 9834 9834 9832 9925 9836 9837 9833 9870 9870 9899 9887 9889 9886 9869 9868 9869 9868 9868 9842 9890 9871 9709 9965 9656 9683 9663 9682 9709 9709 9717 9664 9725 9684 9675 9716 9673 9715 9906 10000 10000 10000 9938
tm019gja 2835 3094 3246 3120 3309 3427 8903 8785 8891 9832 9781 9925 9925 9834 9837 9834 9834 9834 9835 9832 9888 9837 9838 9834 9871 9871 9899 9888 9889 9887 9870 9869 9870 9868 9869 9843 9890 9871 9710 9965 9687 9685 9691 9684 9710 9711 9718 9666 9726 9685 9707 9718 9703 9717 9906 10000 10000 10000 9938
tm019hja 3445 3219 3345 3224 3523 8939 8768 8848 9830 9777 9923 9923 9831 9835 9832 9832 9832 9833 9830 9886 9835 9836 9832 9869 9869 9898 9886 9888 9885 9868 9867 9868 9866 9867 9841 9889 9869 9706 9965 9682 9680 9659 9651 9706 9706 9687 9659 9696 9680 9702 9714 9698 9712 9905 10000 10000 10000 9937
tm019ija tm019jja tm019kja 1694 2627 3523 3345 8988 8875 8875 9830 9777 9923 9923 9831 9835 9832 9832 9832 9833 9830 9924 9835 9836 9832 9895 9895 9898 9886 9888 9908 9868 9867 9868 9889 9893 9868 9889 9869 9731 9965 9682 9707 9713 9706 9731 9734 9740 9694 9748 9708 9732 9738 9726 9739 9905 10000 10000 10000 9937
tm019lja tm019mja tm019nja 1951 2814 3065 8966 8851 8851 9831 9778 9923 9923 9832 9835 9832 9832 9832 9833 9830 9924 9835 9836 9832 9895 9895 9898 9886 9888 9908 9868 9867 9868 9889 9894 9868 9889 9870 9732 9965 9682 9708 9714 9707 9732 9734 9741 9695 9748 9708 9733 9739 9727 9740 9905 10000 10000 10000 9937
tm019oja 2222 3127 8966 8824 8878 9831 9778 9923 9923 9832 9835 9832 9832 9832 9833 9830 9924 9835 9836 9832 9895 9895 9898 9886 9888 9908 9868 9867 9868 9889 9894 9868 9889 9870 9732 9965 9682 9708 9714 9707 9732 9734 9741 9695 9748 9708 9733 9739 9727 9740 9905 10000 10000 10000 9937
tm019pja 2836 8694 8644 8697 9838 9791 9929 9929 9841 9844 9840 9840 9840 9841 9838 9930 9843 9843 9840 9875 9875 9903 9891 9893 9890 9875 9874 9875 9872 9874 9849 9894 9876 9648 9967 9643 9618 9625 9617 9648 9643 9652 9649 9686 9645 9661 9657 9634 9676 9910 10000 10000 9906 9852
tm019qja tm019rja 8818 8697 8697 9838 9791 9929 9929 9841 9844 9840 9840 9840 9841 9838 9930 9843 9843 9840 9875 9875 9903 9891 9893 9890 9875 9874 9875 9872 9874 9849 9894 9876 9672 9967 9643 9644 9651 9643 9672 9643 9678 9616 9686 9645 9691 9681 9661 9676 9940 10000 10000 9938 9882
tm019sja 3610 3714 9942 9945 9967 9967 9951 9951 9936 9936 9936 9936 9935 9968 9937 9937 9936 9976 9976 9977 9979 9979 9979 9976 9976 9976 9980 9976 9976 9980 9977 9848 9970 9925 9860 9839 9859 9870 9836 9839 9885 9866 9860 9897 9873 9832 9862 9972 10000 10000 9885 9863
tm019tja 2877 9920 9912 9965 9965 9921 9923 9909 9909 9909 9910 9908 9930 9911 9911 9909 9975 9975 9976 9978 9978 9978 9975 9975 9975 9979 9975 9975 9979 9975 9863 9967 9920 9851 9854 9851 9863 9825 9854 9876 9858 9851 9918 9866 9873 9854 9970 10000 10000 9938 9912
tm019uja 9920 9912 9965 9965 9921 9923 9909 9909 9909 9910 9908 9965 9911 9911 9909 9975 9975 9976 9978 9978 9978 9975 9975 9975 9979 9975 9975 9979 9975 9863 9967 9920 9851 9854 9851 9863 9851 9854 9876 9858 9851 9918 9866 9873 9854 9970 10000 10000 9938 9912
w32bg115 8683 9797 9797 8514 8413 8453 8453 8341 8407 8379 9765 8370 8435 8337 9584 9609 9594 9658 9663 9678 9757 9706 9733 9666 9731 9733 9644 9736 9125 9585 9326 8818 9040 8961 8942 8989 9070 9380 9095 8909 9364 9147 9220 8954 9408 9693 9693 9637 9321
w32bg__a w32bg__b 9565 9565 6793 6842 8078 8125 7848 8007 7903 9574 7469 7490 7791 9610 9610 9625 9716 9689 9712 9606 9603 9606 9725 9601 9606 9724 9613 9401 9756 9372 9190 9341 9230 9250 9274 9384 9176 9409 9407 9238 9351 9333 9338 9635 9768 9768 9777 9642
w32bg__c 1304 9488 9565 9620 9620 9621 9625 9613 2549 9590 9635 9663 9804 9804 9766 9612 9621 9606 9543 9538 9543 9550 9536 9543 9626 9554 9789 9622 9532 9601 9715 9600 9789 9702 9716 9756 9776 9805 9565 9547 9740 9714 9782 10000 10000 9920 9788
w32bg__d 9488 9565 9576 9576 9578 9581 9568 1836 9632 9593 9620 9804 9804 9766 9652 9660 9647 9595 9591 9595 9589 9589 9595 9665 9605 9789 9622 9532 9601 9715 9600 9789 9702 9716 9756 9776 9805 9629 9547 9740 9714 9782 10000 10000 9920 9788
w32bg__j 2256 5684 5625 5276 5191 5238 9555 4914 5021 5743 9664 9664 9539 9661 9667 9628 9554 9551 9446 9672 9440 9482 9671 9527 9278 9854 9509 9078 9178 9113 9073 9035 9254 9285 9245 9157 9362 9037 9430 9212 9237 9765 9765 9772 9251
w32bg__k 5210 5271 4652 4632 4736 9627 4279 4329 5084 9672 9672 9583 9639 9645 9606 9494 9455 9459 9622 9453 9494 9649 9468 9228 9714 9444 9024 9161 9097 8955 8943 9235 9259 9228 9140 9296 8957 9407 9194 9213 9726 9726 9779 9273
w32bg__n 1545 2456 2139 1973 9625 3373 3426 3012 9692 9692 9644 9661 9617 9607 9572 9570 9572 9621 9568 9602 9620 9578 9195 9811 9439 8985 9104 9014 9019 8915 9169 9248 9134 9085 9453 9076 9345 9195 9363 9817 9817 9822 9335
w32bg__p 2456 2217 1973 9625 3440 3293 2796 9692 9692 9644 9661 9617 9607 9572 9570 9572 9621 9568 9602 9620 9578 9224 9811 9439 9017 9104 8982 9048 8948 9200 9248 9164 9117 9453 9105 9376 9195 9363 9817 9817 9822 9335
w32bg__q w32bg__t 1018 1928 9626 2415 2625 2680 9693 9693 9645 9662 9618 9608 9573 9571 9573 9622 9570 9603 9621 9579 9197 9812 9440 8988 9137 9082 9021 8952 9202 9291 9166 9088 9455 9078 9347 9197 9366 9818 9818 9786 9300
w32bg__r 1919 9629 2768 2967 2887 9695 9695 9647 9639 9595 9585 9546 9544 9546 9600 9542 9576 9599 9553 9202 9813 9444 8961 9080 9056 9027 8925 9206 9256 9171 9093 9458 9083 9351 9202 9333 9782 9782 9787 9305
w32bg__s 9618 2916 2833 2672 9689 9689 9640 9658 9613 9603 9537 9534 9567 9618 9563 9597 9617 9573 9186 9808 9432 9006 9125 9036 9008 8936 9159 9277 9124 9074 9446 9066 9337 9186 9316 9776 9776 9782 9288
w32bg__x 9637 9598 9581 9807 9807 9769 9616 9625 9610 9550 9545 9550 9555 9543 9550 9630 9560 9792 9633 9540 9556 9671 9605 9792 9656 9720 9761 9779 9759 9573 9552 9744 9669 9787 10000 10000 9921 9793
w32bg__z 2033 2750 9671 9671 9596 9643 9600 9590 9435 9431 9435 9604 9430 9464 9603 9472 9212 9779 9420 8976 9093 9069 9010 8908 9217 9270 9182 9075 9333 8981 9360 9183 9307 9822 9822 9756 9280
w32bg_aa 1913 9673 9673 9626 9645 9601 9567 9497 9494 9467 9606 9463 9497 9605 9475 9216 9818 9424 9014 9159 9106 9045 8947 9222 9314 9186 9080 9371 8987 9364 9187 9312 9823 9823 9757 9285
w32bg_ad 9692 9692 9644 9661 9617 9582 9542 9540 9512 9621 9508 9542 9620 9519 9195 9772 9406 8985 9104 9047 8989 8882 9169 9288 9134 9053 9419 9105 9345 9164 9326 9780 9780 9785 9298
w32krg_a 1956 3317 5019 5241 4941 7631 7660 7631 5328 7604 7537 5364 7720 9107 9162 9403 9255 9102 9147 9074 9322 9276 9581 9000 9153 9301 9320 9264 8957 9045 9385 9432 9267 9105
w32krg_b 3557 5076 5457 4941 7723 7519 7723 5539 7509 7584 5627 7629 9298 9262 9440 9324 9206 9218 9139 9391 9376 9581 9068 9188 9340 9380 9370 9099 9090 9432 9478 9267 9193
w32krg_c 3960 4641 4183 7350 7330 7110 4908 7224 7110 4664 7490 9226 9247 9459 9312 9197 9208 9226 9475 9395 9640 9161 9213 9401 9279 9356 9127 9254 9500 9543 9428 9224
w32krg_e 3048 3041 6192 6312 6289 3594 6443 6093 3088 6306 9213 9264 9287 9287 9186 9256 9267 9516 9333 9629 9240 9141 9296 9181 9295 9095 9304 9475 9512 9452 9348
w32krg_g 2813 6077 6245 6028 3018 6183 5978 2930 6335 9278 9280 9300 9327 9228 9268 9225 9496 9371 9602 9196 9155 9309 9219 9366 9197 9352 9522