{"name": "X509_to_X509_REQ", "code": "__int64 * __fastcall X509_to_X509_REQ ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ ) { __int64 @@v3@@ ; __int64 @@v4@@ ; int @@v7@@ ; __int64 @@v8@@ ; __int64 @@v9@@ ; __int64 * @@v10@@ ; @@v10@@ = ( __int64 * ) X509_REQ_new ( ) ; if ( @@v10@@ ) { @@v9@@ = * @@v10@@ ; * * ( _DWORD * * ) ( @@v9@@ + Number ) = Number ; @@v3@@ = * ( _QWORD * ) ( @@v9@@ + Number ) ; * ( _QWORD * ) ( @@v3@@ + Number ) = CRYPTO_malloc ( Number L , String , Number L ) ; if ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@v9@@ + Number ) + Number L ) ) { * * ( _BYTE * * ) ( * ( _QWORD * ) ( @@v9@@ + Number ) + Number L ) = Number ; @@v4@@ = X509_get_subject_name ( @@a1@@ ) ; if ( ( unsigned int ) X509_REQ_set_subject_name ( @@v10@@ , @@v4@@ ) ) { @@v8@@ = X509_get_pubkey ( @@a1@@ ) ; @@v7@@ = X509_REQ_set_pubkey ( @@v10@@ , @@v8@@ ) ; EVP_PKEY_free ( @@v8@@ ) ; if ( @@v7@@ ) { if ( ! @@a2@@ || ( unsigned int ) X509_REQ_sign ( @@v10@@ , @@a2@@ , @@a3@@ ) ) return @@v10@@ ; } } } } else { ERR_put_error ( Number L , Number L , Number L , Number L , Number L ) ; } X509_REQ_free ( @@v10@@ ) ; return Number L ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "v3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r32"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v10", "t": {"T": 3, "t": "__int64"}, "location": "s16"}, {"n": "v9", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "v8", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "v7", "t": {"T": 1, "n": "int", "s": 4}, "location": "s36"}]}