-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathPSSF.rx
1320 lines (1287 loc) · 30.4 KB
/
PSSF.rx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
/* REXX Port Scanner */
/* Super helpful link: */
/* https://www.ibm.com/support/knowledgecenter/en/ */
/* SSLTBW_2.1.0/com.ibm.zos.v2r1.hala001/rexx_sockets_commands_r.htm */
/* License GPL v3 */
/* Copyright Soldier of FORTRAN and GiRa */
/* =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
/* Config */
MAXSOCKETS = 100
MODULO = 100
arg host options
say "________________________________"
say "___ __ \_ ___/_ ___/__ ____/"
say "__ /_/ /____ \_____ \__ /_ "
say "_ ____/____/ /____/ /_ __/ "
say "/_/ /____/ /____/ /_/ "
say "Port Scanning Service Facility "
say ""
say "*** Port Scan by SoF and GiRa"
/* START parse command line options */
parse var options ,
1 "PORT " port " ",
1 "PFROM " pfrom " ",
1 "PTO " pto " "
if host == "" then do
call OutError "You must specify a host to scan"
call Usage
exit
end
if port<>"" then
custom_port = 1
else
custom_port = 0
if (pfrom<>"" && pto<>"") then do
call OutError "You must specify both PFROM and PTO for custom ranges"
call Usage
exit
end
if (pfrom<>"" & pto<>"") then
custom_range = 1
else
custom_range = 0
if (custom_port & custom_range) then do
call OutError("You cannot specify a custom port and a custom range")
call Usage
exit
end
if wordpos(VERBOSE, options) > 0 then
verbose = 1
else
verbose = 0
if wordpos(DEBUG, options) > 0 then
debug = 1
else
debug = 0
/* end parse command line options */
/* Timestamp */
time
/* */
/* Time to get the sockets ready */
/* */
so_txt = Socket("Initialize", "PORTSCAN", MAXSOCKETS)
DO I=1 TO MAXSOCKETS
txt = Socket("Socket", "AF_INET", "STREAM", "TCP")
parse var txt r_c socket_descriptor
end
DO I=1 to MAXSOCKETS
so_txt = Socket("SetSockOpt",I,"SOL_SOCKET","SO_ASCII","On")
so_txt = Socket("SetSockOpt",I,"SOL_SOCKET","SO_RCVTIMEO","30 0")
so_txt = Socket("SetSockOpt",I,"SOL_SOCKET","SO_SNDTIMEO","30 0")
so_txt = socket("FCNTL",I,F_SETFL,"NON-BLOCKING")
sockets.I = 0
end
sockets.0 = MAXSOCKETS
/* Sockets are ready to go get the target */
txt = Socket("RESOLVE", host)
parse var txt r_c ip .
if r_c <> 0 then do
if debug then call OutDebug "Could not resolve" host
if debug then call OutDebug "Assuming IP address"
if debug then call OutDebug "RESOLVE" txt
ip = host
end
if verbose then call OutVerbose "TARGET:" ip
if verbose then call OutVerbose "Starting Port Scan"
/* Non-blocking ping first */
ping host
/* Start connecting */
call init_ports /* Initialize the array of ports */
if verbose then call OutVerbose "TOTAL PORTS:" allports.0
if verbose then call OutVerbose "Scanning..."
DO FOREVER
DO I=1 to sockets.0 /* Is there a socket for us to work with? */
if sockets.I == 0 then do
DO J=1 to allports.0
if J > allports.0 then leave
P = allports.J
if scanned.p == "SCANNED."||P then do
/* Print the current port every MODULO ports */
if J // MODULO == 0 then
if verbose then call OutVerbose "at port" P
so_txt = Socket("CONNECT",I,"AF_INET" P ip)
parse var so_txt r_c results
if debug then call OutDebug "CONNECT",
ip||":"||P "-" I "-" r_c "-" results
sockets.I = P
scanned.p = "filtered"
/* sockets.sockid = port */
/* scanned.port = "status" */
leave
end
end
end
end
/* Here, all the available sockets are assigned to a port */
/* and try to connect to it */
/* */
/* The status of a port if "filtered" by default */
/* The next code detects the real status of a port */
/* Now we check the sockets */
/* READ/WRITE means an open socket */
/* Exception means closed */
so_txt = SOCKET("SELECT","READ * WRITE * EXCEPTION *", 1)
if debug then call OutDebug "SOCKET SELECT:" so_txt
parse value so_txt with "READ" read_sock "WRITE" .
parse value so_txt with "WRITE" write_sock "EXCEPTION" .
parse value so_txt with "EXCEPTION" excp_sock
/* First fill a stem with exception sockets */
excp_sockets.0 = 0
if excp_sock \= " " then do
if debug then call OutDebug "EXCEPTION SOCKETS:" excp_sock
Do i = 1 to WORDS(excp_sock)
excp_sockets.i = WORD(excp_sock,i)
excp_sockets.0 = excp_sockets.0 + 1
end
if debug then call OutDebug "TOTAL EXCEPTION SOCKETS:" excp_sockets.0
end
/* Next we check if there are any sockets to read */
read_sockets.0 = 0
if read_sock \= " " then do
if debug then call OutDebug "READ SOCKETS:" read_sock
do i =1 to words(read_sock)
socks = WORD(read_sock,i)
read_sockets.i = socks
read_sockets.0 = read_sockets.0 + 1
if not_exception(socks) then do
if debug then call OutDebug "READ SOCKS socket id:" SOCKS
data = socket("read", socks, 512)
parse var data . . data
if debug then call OutDebug "DATA:" data
u = closed(socks,"open",data)
end
end
end
/* If there's no read, maybe sockets to write */
if write_sock \= " " then do
if debug then call OutDebug "WRITE SOCKETS:" write_sock
do i =1 to words(write_sock)
socks = WORD(write_sock,i)
if not_exception(socks) & not_read(socks) then do
if debug then call OutDebug "WRITE SOCKS socket id:" SOCKS
u = closed(socks,"open")
end
end
end
if excp_sock \= "" then do
if debug then call OutDebug "EXCEPTION SOCKETS:" excp_sock
Do i = 1 to WORDS(excp_sock)
socks = WORD(excp_sock,i)
u = closed(socks,"closed")
end
end
if J >= allports.0 &,
all_done() &,
read_sock == " " &,
write_sock == " " &,
excp_sock == "" then do
if verbose then call OutVerbose "We are done here!"
leave
end
end
/* Printing the results */
/* Only print open ports by default */
/* Show all ports in debug */
DO Y = 1 to allports.0
P = allports.Y
if (verbose & scanned.P == "closed ") | custom_port then
say ip||":"||LEFT(P,8) scanned.P
/* If we are scanning just a port, we already output it */
if scanned.P == 'open ' & \custom_port then
say ip||":"||LEFT(P,8) scanned.P
end
return 0
closed:
parse arg sockid,status_port,data
/* wtf */
ugh = socket("CLOSE",sockid)
port = sockets.sockid
/* free the socket for use with another port */
sockets.sockid = 0
scanned.port = LEFT(status_port,7)||data
txt = Socket("Socket", "AF_INET", "STREAM", "TCP")
parse var txt r_c s_d
if verbose then do
if status_port == "open" then
call OutVerbose "Discovered open port" port
end
if debug then call OutDebug "CLOSING - PORT" port,
"status" status_port,
"sockid" sockid s_d
so_txt = Socket("SetSockOpt",s_d,"SOL_SOCKET","SO_ASCII","On")
so_txt = Socket("SetSockOpt",s_d,"SOL_SOCKET","SO_RCVTIMEO","30 0")
so_txt = Socket("SetSockOpt",s_d,"SOL_SOCKET","SO_SNDTIMEO","30 0")
so_txt = socket("FCNTL",s_d,F_SETFL,"NON-BLOCKING")
return 0
not_exception:
/* Check to see if a port is in the exception list */
parse arg ex_port
Do x = 1 to excp_sockets.0
if excp_sockets.x == ex_port then
return 0
end
return 1
not_read:
/* Check to see if a port was already processed as READ */
parse arg ex_port
Do x = 1 to read_sockets.0
if read_sockets.x == ex_port then
return 0
end
return 1
all_done:
/* Checks if we're waiting on ports */
DO thing=1 to sockets.0
if sockets.thing \= 0 then
return 0
end
return 1
init_ports:
if custom_port then do
allports.0 = 1
allports.1 = port
end
else if custom_range then do
total_ports = 0
do i=pfrom to pto
total_ports = total_ports + 1
allports.total_ports = i
end
allports.0 = total_ports
end
else do
allports.0=1000
allports.1=1
allports.2=3
allports.3=4
allports.4=6
allports.5=7
allports.6=9
allports.7=13
allports.8=17
allports.9=19
allports.10=20
allports.11=21
allports.12=22
allports.13=23
allports.14=24
allports.15=25
allports.16=26
allports.17=30
allports.18=32
allports.19=33
allports.20=37
allports.21=42
allports.22=43
allports.23=49
allports.24=53
allports.25=70
allports.26=79
allports.27=80
allports.28=81
allports.29=82
allports.30=83
allports.31=84
allports.32=85
allports.33=88
allports.34=89
allports.35=90
allports.36=99
allports.37=100
allports.38=106
allports.39=109
allports.40=110
allports.41=111
allports.42=113
allports.43=119
allports.44=125
allports.45=135
allports.46=139
allports.47=143
allports.48=144
allports.49=146
allports.50=161
allports.51=163
allports.52=179
allports.53=199
allports.54=211
allports.55=212
allports.56=222
allports.57=254
allports.58=255
allports.59=256
allports.60=259
allports.61=264
allports.62=280
allports.63=301
allports.64=306
allports.65=311
allports.66=340
allports.67=366
allports.68=389
allports.69=406
allports.70=407
allports.71=416
allports.72=417
allports.73=425
allports.74=427
allports.75=443
allports.76=444
allports.77=445
allports.78=458
allports.79=464
allports.80=465
allports.81=481
allports.82=497
allports.83=500
allports.84=512
allports.85=513
allports.86=514
allports.87=515
allports.88=524
allports.89=541
allports.90=543
allports.91=544
allports.92=545
allports.93=548
allports.94=554
allports.95=555
allports.96=563
allports.97=587
allports.98=593
allports.99=616
allports.100=617
allports.101=625
allports.102=631
allports.103=636
allports.104=646
allports.105=648
allports.106=666
allports.107=667
allports.108=668
allports.109=683
allports.110=687
allports.111=691
allports.112=700
allports.113=705
allports.114=711
allports.115=714
allports.116=720
allports.117=722
allports.118=726
allports.119=749
allports.120=765
allports.121=777
allports.122=783
allports.123=787
allports.124=800
allports.125=801
allports.126=808
allports.127=843
allports.128=873
allports.129=880
allports.130=888
allports.131=898
allports.132=900
allports.133=901
allports.134=902
allports.135=903
allports.136=911
allports.137=912
allports.138=981
allports.139=987
allports.140=990
allports.141=992
allports.142=993
allports.143=995
allports.144=999
allports.145=1000
allports.146=1001
allports.147=1002
allports.148=1007
allports.149=1009
allports.150=1010
allports.151=1011
allports.152=1021
allports.153=1022
allports.154=1023
allports.155=1024
allports.156=1025
allports.157=1026
allports.158=1027
allports.159=1028
allports.160=1029
allports.161=1030
allports.162=1031
allports.163=1032
allports.164=1033
allports.165=1034
allports.166=1035
allports.167=1036
allports.168=1037
allports.169=1038
allports.170=1039
allports.171=1040
allports.172=1041
allports.173=1042
allports.174=1043
allports.175=1044
allports.176=1045
allports.177=1046
allports.178=1047
allports.179=1048
allports.180=1049
allports.181=1050
allports.182=1051
allports.183=1052
allports.184=1053
allports.185=1054
allports.186=1055
allports.187=1056
allports.188=1057
allports.189=1058
allports.190=1059
allports.191=1060
allports.192=1061
allports.193=1062
allports.194=1063
allports.195=1064
allports.196=1065
allports.197=1066
allports.198=1067
allports.199=1068
allports.200=1069
allports.201=1070
allports.202=1071
allports.203=1072
allports.204=1073
allports.205=1074
allports.206=1075
allports.207=1076
allports.208=1077
allports.209=1078
allports.210=1079
allports.211=1080
allports.212=1081
allports.213=1082
allports.214=1083
allports.215=1084
allports.216=1085
allports.217=1086
allports.218=1087
allports.219=1088
allports.220=1089
allports.221=1090
allports.222=1091
allports.223=1092
allports.224=1093
allports.225=1094
allports.226=1095
allports.227=1096
allports.228=1097
allports.229=1098
allports.230=1099
allports.231=1100
allports.232=1102
allports.233=1104
allports.234=1105
allports.235=1106
allports.236=1107
allports.237=1108
allports.238=1110
allports.239=1111
allports.240=1112
allports.241=1113
allports.242=1114
allports.243=1117
allports.244=1119
allports.245=1121
allports.246=1122
allports.247=1123
allports.248=1124
allports.249=1126
allports.250=1130
allports.251=1131
allports.252=1132
allports.253=1137
allports.254=1138
allports.255=1141
allports.256=1145
allports.257=1147
allports.258=1148
allports.259=1149
allports.260=1151
allports.261=1152
allports.262=1154
allports.263=1163
allports.264=1164
allports.265=1165
allports.266=1166
allports.267=1169
allports.268=1174
allports.269=1175
allports.270=1183
allports.271=1185
allports.272=1186
allports.273=1187
allports.274=1192
allports.275=1198
allports.276=1199
allports.277=1201
allports.278=1213
allports.279=1216
allports.280=1217
allports.281=1218
allports.282=1233
allports.283=1234
allports.284=1236
allports.285=1244
allports.286=1247
allports.287=1248
allports.288=1259
allports.289=1271
allports.290=1272
allports.291=1277
allports.292=1287
allports.293=1296
allports.294=1300
allports.295=1301
allports.296=1309
allports.297=1310
allports.298=1311
allports.299=1322
allports.300=1328
allports.301=1334
allports.302=1352
allports.303=1417
allports.304=1433
allports.305=1434
allports.306=1443
allports.307=1455
allports.308=1461
allports.309=1494
allports.310=1500
allports.311=1501
allports.312=1503
allports.313=1521
allports.314=1524
allports.315=1533
allports.316=1556
allports.317=1580
allports.318=1583
allports.319=1594
allports.320=1600
allports.321=1641
allports.322=1658
allports.323=1666
allports.324=1687
allports.325=1688
allports.326=1700
allports.327=1717
allports.328=1718
allports.329=1719
allports.330=1720
allports.331=1721
allports.332=1723
allports.333=1755
allports.334=1761
allports.335=1782
allports.336=1783
allports.337=1801
allports.338=1805
allports.339=1812
allports.340=1839
allports.341=1840
allports.342=1862
allports.343=1863
allports.344=1864
allports.345=1875
allports.346=1900
allports.347=1914
allports.348=1935
allports.349=1947
allports.350=1971
allports.351=1972
allports.352=1974
allports.353=1984
allports.354=1998
allports.355=1999
allports.356=2000
allports.357=2001
allports.358=2002
allports.359=2003
allports.360=2004
allports.361=2005
allports.362=2006
allports.363=2007
allports.364=2008
allports.365=2009
allports.366=2010
allports.367=2013
allports.368=2020
allports.369=2021
allports.370=2022
allports.371=2030
allports.372=2033
allports.373=2034
allports.374=2035
allports.375=2038
allports.376=2040
allports.377=2041
allports.378=2042
allports.379=2043
allports.380=2045
allports.381=2046
allports.382=2047
allports.383=2048
allports.384=2049
allports.385=2065
allports.386=2068
allports.387=2099
allports.388=2100
allports.389=2103
allports.390=2105
allports.391=2106
allports.392=2107
allports.393=2111
allports.394=2119
allports.395=2121
allports.396=2126
allports.397=2135
allports.398=2144
allports.399=2160
allports.400=2161
allports.401=2170
allports.402=2179
allports.403=2190
allports.404=2191
allports.405=2196
allports.406=2200
allports.407=2222
allports.408=2251
allports.409=2260
allports.410=2288
allports.411=2301
allports.412=2323
allports.413=2366
allports.414=2381
allports.415=2382
allports.416=2383
allports.417=2393
allports.418=2394
allports.419=2399
allports.420=2401
allports.421=2492
allports.422=2500
allports.423=2522
allports.424=2525
allports.425=2557
allports.426=2601
allports.427=2602
allports.428=2604
allports.429=2605
allports.430=2607
allports.431=2608
allports.432=2638
allports.433=2701
allports.434=2702
allports.435=2710
allports.436=2717
allports.437=2718
allports.438=2725
allports.439=2800
allports.440=2809
allports.441=2811
allports.442=2869
allports.443=2875
allports.444=2909
allports.445=2910
allports.446=2920
allports.447=2967
allports.448=2968
allports.449=2998
allports.450=3000
allports.451=3001
allports.452=3003
allports.453=3005
allports.454=3006
allports.455=3007
allports.456=3011
allports.457=3013
allports.458=3017
allports.459=3030
allports.460=3031
allports.461=3052
allports.462=3071
allports.463=3077
allports.464=3128
allports.465=3168
allports.466=3211
allports.467=3221
allports.468=3260
allports.469=3261
allports.470=3268
allports.471=3269
allports.472=3283
allports.473=3300
allports.474=3301
allports.475=3306
allports.476=3322
allports.477=3323
allports.478=3324
allports.479=3325
allports.480=3333
allports.481=3351
allports.482=3367
allports.483=3369
allports.484=3370
allports.485=3371
allports.486=3372
allports.487=3389
allports.488=3390
allports.489=3404
allports.490=3476
allports.491=3493
allports.492=3517
allports.493=3527
allports.494=3546
allports.495=3551
allports.496=3580
allports.497=3659
allports.498=3689
allports.499=3690
allports.500=3703
allports.501=3737
allports.502=3766
allports.503=3784
allports.504=3800
allports.505=3801
allports.506=3809
allports.507=3814
allports.508=3826
allports.509=3827
allports.510=3828
allports.511=3851
allports.512=3869
allports.513=3871
allports.514=3878
allports.515=3880
allports.516=3889
allports.517=3905
allports.518=3914
allports.519=3918
allports.520=3920
allports.521=3945
allports.522=3971
allports.523=3986
allports.524=3995
allports.525=3998
allports.526=4000
allports.527=4001
allports.528=4002
allports.529=4003
allports.530=4004
allports.531=4005
allports.532=4006
allports.533=4045
allports.534=4111
allports.535=4125
allports.536=4126
allports.537=4129
allports.538=4224
allports.539=4242
allports.540=4279
allports.541=4321
allports.542=4343
allports.543=4443
allports.544=4444
allports.545=4445
allports.546=4446
allports.547=4449
allports.548=4550
allports.549=4567
allports.550=4662
allports.551=4848
allports.552=4899
allports.553=4900
allports.554=4998
allports.555=5000
allports.556=5001
allports.557=5002
allports.558=5003
allports.559=5004
allports.560=5009
allports.561=5030
allports.562=5033
allports.563=5050
allports.564=5051
allports.565=5054
allports.566=5060
allports.567=5061
allports.568=5080
allports.569=5087
allports.570=5100
allports.571=5101
allports.572=5102
allports.573=5120
allports.574=5190
allports.575=5200
allports.576=5214
allports.577=5221
allports.578=5222
allports.579=5225
allports.580=5226
allports.581=5269
allports.582=5280
allports.583=5298
allports.584=5357
allports.585=5405
allports.586=5414
allports.587=5431
allports.588=5432
allports.589=5440
allports.590=5500
allports.591=5510
allports.592=5544
allports.593=5550
allports.594=5555
allports.595=5560
allports.596=5566
allports.597=5631
allports.598=5633
allports.599=5666
allports.600=5678
allports.601=5679
allports.602=5718
allports.603=5730
allports.604=5800
allports.605=5801
allports.606=5802
allports.607=5810
allports.608=5811
allports.609=5815
allports.610=5822
allports.611=5825
allports.612=5850
allports.613=5859
allports.614=5862
allports.615=5877
allports.616=5900
allports.617=5901
allports.618=5902
allports.619=5903
allports.620=5904
allports.621=5906
allports.622=5907
allports.623=5910
allports.624=5911
allports.625=5915
allports.626=5922
allports.627=5925
allports.628=5950
allports.629=5952
allports.630=5959
allports.631=5960
allports.632=5961
allports.633=5962
allports.634=5963
allports.635=5987
allports.636=5988
allports.637=5989
allports.638=5998
allports.639=5999
allports.640=6000
allports.641=6001
allports.642=6002
allports.643=6003
allports.644=6004
allports.645=6005
allports.646=6006
allports.647=6007
allports.648=6009
allports.649=6025
allports.650=6059
allports.651=6100
allports.652=6101
allports.653=6106
allports.654=6112
allports.655=6123
allports.656=6129
allports.657=6156
allports.658=6346
allports.659=6389
allports.660=6502
allports.661=6510
allports.662=6543
allports.663=6547
allports.664=6565
allports.665=6566
allports.666=6567
allports.667=6580
allports.668=6646
allports.669=6666
allports.670=6667
allports.671=6668
allports.672=6669
allports.673=6689
allports.674=6692
allports.675=6699
allports.676=6779
allports.677=6788
allports.678=6789
allports.679=6792
allports.680=6839
allports.681=6881
allports.682=6901
allports.683=6969
allports.684=7000
allports.685=7001
allports.686=7002
allports.687=7004
allports.688=7007
allports.689=7019
allports.690=7025
allports.691=7070
allports.692=7100
allports.693=7103
allports.694=7106
allports.695=7200
allports.696=7201
allports.697=7402
allports.698=7435
allports.699=7443
allports.700=7496
allports.701=7512
allports.702=7625
allports.703=7627
allports.704=7676
allports.705=7741
allports.706=7777
allports.707=7778
allports.708=7800
allports.709=7911
allports.710=7920
allports.711=7921
allports.712=7937
allports.713=7938
allports.714=7999
allports.715=8000
allports.716=8001
allports.717=8002
allports.718=8007
allports.719=8008