{"name": "_ZN7cocos2d9CCAnimate17initWithAnimationEPNS_11CCAnimationE", "code": "__int64 __fastcall cocos2d CCAnimate initWithAnimation ( cocos2d CCAnimate * @@this@@ , cocos2d CCAnimation * @@a2@@ ) { __int64 ( __fastcall * v3 ) ( cocos2d CCAnimation * __hidden ) ; int v4 ; unsigned int @@v5@@ ; __int64 v7 ; _QWORD ( __fastcall * v8 ) ( cocos2d CCAnimate * __hidden , cocos2d CCAnimation * ) ; cocos2d CCObject * v9 ; __int64 v10 ; __int64 @@v11@@ ; __int64 ( __fastcall * v12 ) ( cocos2d CCAnimation * __hidden ) ; cocos2d CCArray * v13 ; unsigned int v14 ; void * @@v15@@ ; __int64 v16 ; __int64 ( __fastcall * v17 ) ( cocos2d CCAnimation * __hidden ) ; float @@v18@@ ; __int64 ( __fastcall * v19 ) ( cocos2d CCAnimation * __hidden ) ; __int64 v20 ; unsigned int * v21 ; __int64 v22 ; float * * @@v23@@ ; unsigned __int64 v24 ; float @@v25@@ ; float * v26 ; void ( * v27 ) ( void ) ; float v28 ; __int64 v29 ; __int64 v30 ; __int64 v31 ; __int64 @@v32@@ ; __int64 v33 ; char * v34 ; char * @@v35@@ ; signed __int64 v36 ; double v37 ; char * v38 ; void * v39 ; char * v40 ; float @@v41@@ ; float @@v42@@ [ Number ] ; @@v41@@ = ( * ( float ( __fastcall * * ) ( cocos2d CCAnimation * ) ) ( * ( _QWORD * ) @@a2@@ + Number L ) ) ( @@a2@@ ) ; v3 = * ( __int64 ( __fastcall * * ) ( cocos2d CCAnimation * __hidden ) ) ( * ( _QWORD * ) @@a2@@ + Number L ) ; if ( v3 == cocos2d CCAnimation getLoops ) v4 = * ( ( _DWORD * ) @@a2@@ + Number ) ; else v4 = v3 ( @@a2@@ ) ; @@v5@@ = cocos2d CCActionInterval initWithDuration ( @@this@@ , ( float ) v4 * @@v41@@ ) ; if ( ! ( _BYTE ) @@v5@@ ) return @@v5@@ ; v7 = * ( _QWORD * ) @@this@@ ; * ( ( _DWORD * ) @@this@@ + Number ) = Number ; v8 = * ( _QWORD ( __fastcall * * ) ( cocos2d CCAnimate * __hidden , cocos2d CCAnimation * ) ) ( v7 + Number ) ; if ( v8 == cocos2d CCAnimate setAnimation ) { if ( @@a2@@ != * ( ( cocos2d CCAnimation * * ) @@this@@ + Number ) ) { cocos2d CCObject retain ( @@a2@@ ) ; v9 = ( cocos2d CCObject * ) * ( ( _QWORD * ) @@this@@ + Number ) ; if ( v9 ) cocos2d CCObject release ( v9 ) ; * ( ( _QWORD * ) @@this@@ + Number ) = @@a2@@ ; } } else { v8 ( @@this@@ , @@a2@@ ) ; } v10 = * ( _QWORD * ) @@a2@@ ; @@v11@@ = * ( ( _QWORD * ) @@this@@ + Number ) ; * ( ( _QWORD * ) @@this@@ + Number ) = Number L ; * ( ( _DWORD * ) @@this@@ + Number ) = Number ; v12 = * ( __int64 ( __fastcall * * ) ( cocos2d CCAnimation * __hidden ) ) ( v10 + Number ) ; if ( v12 == cocos2d CCAnimation getFrames ) v13 = ( cocos2d CCArray * ) * ( ( _QWORD * ) @@a2@@ + Number ) ; else v13 = ( cocos2d CCArray * ) v12 ( @@a2@@ ) ; v14 = cocos2d CCArray count ( v13 ) ; @@v15@@ = * ( void * * ) @@v11@@ ; if ( v14 > ( unsigned __int64 ) ( ( __int64 ) ( * ( _QWORD * ) ( @@v11@@ + Number ) - * ( _QWORD * ) @@v11@@ ) >> Number ) ) { @@v32@@ = Number L * v14 ; v33 = * ( _QWORD * ) ( @@v11@@ + Number ) - ( _QWORD ) @@v15@@ ; if ( v14 ) { v34 = ( char * ) operator new ( Number L * v14 ) ; @@v15@@ = * ( void * * ) @@v11@@ ; @@v35@@ = v34 ; v36 = * ( _QWORD * ) ( @@v11@@ + Number ) - * ( _QWORD * ) @@v11@@ ; } else { v36 = * ( _QWORD * ) ( @@v11@@ + Number ) - ( _QWORD ) @@v15@@ ; @@v35@@ = Number L ; } if ( v36 > Number ) { v39 = @@v15@@ ; v38 = ( char * ) memmove ( @@v35@@ , @@v15@@ , v36 ) ; @@v15@@ = v39 ; @@v35@@ = v38 ; } else if ( ! @@v15@@ ) { LABEL_35 : * ( _QWORD * ) @@v11@@ = @@v35@@ ; * ( _QWORD * ) ( @@v11@@ + Number ) = & @@v35@@ [ v33 ] ; * ( _QWORD * ) ( @@v11@@ + Number ) = & @@v35@@ [ @@v32@@ ] ; goto LABEL_13 ; } v40 = @@v35@@ ; operator delete ( @@v15@@ ) ; @@v35@@ = v40 ; goto LABEL_35 ; } LABEL_13 : v16 = * ( _QWORD * ) @@a2@@ ; v17 = * ( __int64 ( __fastcall * * ) ( cocos2d CCAnimation * __hidden ) ) ( * ( _QWORD * ) @@a2@@ + Number L ) ; if ( v17 == cocos2d CCAnimation getTotalDelayUnits ) { @@v18@@ = * ( ( float * ) @@a2@@ + Number ) ; } else { v37 = ( ( double ( __fastcall * ) ( cocos2d CCAnimation * ) ) v17 ) ( @@a2@@ ) ; v16 = * ( _QWORD * ) @@a2@@ ; @@v18@@ = * ( float * ) & v37 ; } v19 = * ( __int64 ( __fastcall * * ) ( cocos2d CCAnimation * __hidden ) ) ( v16 + Number ) ; if ( v19 == cocos2d CCAnimation getFrames ) v20 = * ( ( _QWORD * ) @@a2@@ + Number ) ; else v20 = v19 ( @@a2@@ ) ; if ( v20 ) { v21 = * ( unsigned int * * ) ( v20 + Number ) ; v22 = * v21 ; if ( ( _DWORD ) v22 ) { @@v23@@ = ( float * * ) * ( ( _QWORD * ) v21 + Number ) ; v24 = ( unsigned __int64 ) & @@v23@@ [ v22 - Number ] ; if ( ( unsigned __int64 ) @@v23@@ <= v24 ) { @@v25@@ = Number ; while ( Number ) { v26 = * @@v23@@ ; if ( ! * @@v23@@ ) break ; v27 = * ( void ( * * ) ( void ) ) ( * ( _QWORD * ) v26 + Number L ) ; v28 = ( float ) ( ( float ) ( @@v41@@ / @@v18@@ ) * @@v25@@ ) / @@v41@@ ; @@v42@@ [ Number ] = v28 ; if ( ( char * ) v27 == ( char * ) cocos2d CCAnimationFrame getDelayUnits ) v28 = v26 [ Number ] ; else v27 ( ) ; v29 = * ( ( _QWORD * ) @@this@@ + Number ) ; @@v25@@ = @@v25@@ + v28 ; v30 = * ( _QWORD * ) ( v29 + Number ) ; if ( v30 == * ( _QWORD * ) ( v29 + Number ) ) { ++ @@v23@@ ; std vector < float > _M_realloc_insert < float const & > ( v29 , v30 , @@v42@@ ) ; if ( v24 < ( unsigned __int64 ) @@v23@@ ) return @@v5@@ ; } else { v31 = v30 + Number ; ++ @@v23@@ ; * ( float * ) ( v31 - Number ) = @@v42@@ [ Number ] ; * ( _QWORD * ) ( v29 + Number ) = v31 ; if ( v24 < ( unsigned __int64 ) @@v23@@ ) return @@v5@@ ; } } } } } return @@v5@@ ; }", "source": [{"n": "v5", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r104"}, {"n": "v11", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r112"}, {"n": "v32", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r128"}, {"n": "v23", "t": {"T": 3, "t": "float *"}, "location": "r48"}, {"n": "v25", "t": {"T": 1, "n": "float", "s": 4}, "location": "r512"}, {"n": "v18", "t": {"T": 1, "n": "float", "s": 4}, "location": "r528"}, {"n": "this", "t": {"T": 3, "t": "cocos2d::CCAnimate"}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "cocos2d::CCAnimation"}, "location": "r64"}, {"n": "v15", "t": {"T": 3, "t": "void"}, "location": "r72"}, {"n": "v35", "t": {"T": 3, "t": "char"}, "location": "r80"}, {"n": "v42", "t": {"T": 2, "n": 15, "s": 4, "t": "float"}, "location": "s60"}, {"n": "v41", "t": {"T": 1, "n": "float", "s": 4}, "location": "s80"}]}