| line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
|
1
|
1
|
|
|
1
|
|
1139
|
use v5.20; |
|
|
1
|
|
|
|
|
4
|
|
|
2
|
1
|
|
|
1
|
|
4
|
use warnings; |
|
|
1
|
|
|
|
|
2
|
|
|
|
1
|
|
|
|
|
56
|
|
|
3
|
1
|
|
|
1
|
|
4
|
use experimental 'signatures'; |
|
|
1
|
|
|
|
|
2
|
|
|
|
1
|
|
|
|
|
5
|
|
|
4
|
|
|
|
|
|
|
|
|
5
|
|
|
|
|
|
|
package String::Obfuscate::Base64 { |
|
6
|
1
|
|
|
1
|
|
1502
|
use parent 'String::Obfuscate'; |
|
|
1
|
|
|
|
|
2
|
|
|
|
1
|
|
|
|
|
6
|
|
|
7
|
1
|
|
|
1
|
|
106
|
use constant B64_CHARS => ['a'..'z', 'A'..'Z', 0..9, '+', '/']; |
|
|
1
|
|
|
|
|
1
|
|
|
|
1
|
|
|
|
|
94
|
|
|
8
|
1
|
|
|
1
|
|
498
|
use MIME::Base64 qw(encode_base64 decode_base64); |
|
|
1
|
|
|
|
|
805
|
|
|
|
1
|
|
|
|
|
247
|
|
|
9
|
|
|
|
|
|
|
|
|
10
|
34
|
|
|
34
|
1
|
19350
|
sub new ($class, %params) { |
|
|
34
|
|
|
|
|
65
|
|
|
|
34
|
|
|
|
|
86
|
|
|
|
34
|
|
|
|
|
76
|
|
|
11
|
34
|
50
|
|
|
|
108
|
die 'Cannot use custom chars in Base64 mode' if exists $params{'chars'}; |
|
12
|
34
|
|
|
|
|
135
|
$class->SUPER::new(chars => B64_CHARS, %params); |
|
13
|
|
|
|
|
|
|
} |
|
14
|
|
|
|
|
|
|
|
|
15
|
40
|
|
|
40
|
1
|
94
|
sub obfuscate ($self, $str) { $self->SUPER::obfuscate(encode_base64($str)) } |
|
|
40
|
|
|
|
|
60
|
|
|
|
40
|
|
|
|
|
81
|
|
|
|
40
|
|
|
|
|
62
|
|
|
|
40
|
|
|
|
|
204
|
|
|
16
|
24
|
|
|
24
|
1
|
4300
|
sub deobfuscate ($self, $str) { decode_base64($self->SUPER::deobfuscate($str)) } |
|
|
24
|
|
|
|
|
41
|
|
|
|
24
|
|
|
|
|
49
|
|
|
|
24
|
|
|
|
|
35
|
|
|
|
24
|
|
|
|
|
98
|
|
|
17
|
|
|
|
|
|
|
} |
|
18
|
|
|
|
|
|
|
|
|
19
|
|
|
|
|
|
|
1; |