I have a few different ways to convert old qleader and text to mleader or leader and text to mleader. However all methods aren't able to retain the leader landing direction.

Code:
(defun C:LD2MLD (/ ent1 ent1-gcode ent1-type leader-dir leader-pt-list leader-1st-pt leader-2nd-pt
ent2 ent2-gcode ent2-type text-strg)

		(setq ent1(car(entsel "\nSelect a Leader: "))
			ent1-gcode(entget ent1)
			ent1-type(cdr(assoc 0 ent1-gcode))
		)
	(if(= ent1-type "LEADER")
		(progn
					(setq leader-pt-list(member(assoc 10 ent1-gcode) ent1-gcode)
						leader-1st-pt(cdr(car leader-pt-list))
						leader-2nd-pt(cdr(cadr leader-pt-list))
						ent2(car(entsel "\nSelect Text or Mtext: "))
						ent2-gcode(entget ent2)
						ent2-type(cdr(assoc 0 ent2-gcode))
					)
			(if(or(= ent2-type "TEXT")(= ent2-type "MTEXT"))
				(progn
					(setq text-strg(cdr(assoc 1 ent2-gcode)))
						(setvar "OSMODE" (boole 7 (getvar "OSMODE") 16384));osnap off
						(setvar "CMDECHO" 0);command echo off
						(command
							"_.ERASE" ent1 ent2 ""
							"_.MLEADER" leader-1st-pt leader-2nd-pt "" text-strg
						)
					;;; experimental retreval of text and leader direction 
					(setq ml (entlast))
					(setq hand (entget ml))
					;;; text direction setting 171 1 (right) or 3 (left) 
					(setq hand (subst (cons '171 1) (assoc 171 hand) hand))
					;;; second 11 in multileader properties (not sure how to obtain) switch first variable from positive to negative visa versa
					; (setq hand (subst (cons '11 0)) (assoc 11 hand) hand))
					(entmod hand)

					(setvar "CMDECHO" 1);command echo on
					(setvar "OSMODE" (boole 2 (getvar "OSMODE") 16384));osnap on
				)
			)
			(if(and(/= ent2-type "TEXT")(/= ent2-type "MTEXT"))(alert "Object selected is not a text or mtext"))
		)
	)
			(if(/= ent1-type "LEADER")(alert "Object selected is not a leader"))
			
			
			(princ)
);defun
The properties i'm attempting to adjust are in the multileader properties dump just past (302 . "LEADER{") ... (11 -1.0 0.0 0.0)

Code:
((-1 . <Entity name: 16e9903eb40>) (0 . "MULTILEADER") (330 . <Entity name: 16e92a18820>) (5 . "156C4") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "1") (100 . "AcDbMLeader") (270 . 2) (300 . "CONTEXT_DATA{") (40 . 12.8) (10 -2751.63 1357.58 0.0) (41 . 1.2) (140 . 1.2) (145 . 0.4) (174 . 1) (175 . 3) (176 . 2) (177 . 0) (290 . 1) 
(304 . "ROOF SHEATHING") (11 0.0 0.0 1.0) (340 . <Entity name: 16e92a17b70>) (12 -2739.12 1358.18 0.0) (13 1.0 0.0 0.0) (42 . 0.0) (43 . 0.0) (44 . 0.0) (45 . 1.0) (170 . 1) (90 . -1073741824) (171 . 3) (172 . 5) (91 . -1073741824) (141 . 0.0) (92 . 0) (291 . 0) (292 . 0) (173 . 0) (293 . 0) (142 . 0.0) (143 . 0.0) (294 . 0) (295 . 0) (296 . 0) (110 -2735.54 1352.26 0.0) (111 1.0 0.0 0.0) (112 0.0 1.0 0.0) (297 . 0) 
(302 . "LEADER{") (290 . 1) (291 . 1) (10 -2737.52 1357.58 0.0) (11 -1.0 0.0 0.0) (90 . 0) (40 . 1.2) 
(304 . "LEADER_LINE{") (10 -2735.54 1352.26 0.0) (91 . 0) (170 . 1) (92 . -1056964608) (340 . <Entity name: 0>) (171 . -2) (40 . 0.0) (341 . <Entity name: 0>) (93 . 0) (305 . "}") (271 . 0) (303 . "}") (272 . 9) (273 . 9) (301 . "}") (340 . <Entity name: 16e92a17bc0>) (90 . 279552) (170 . 1) (91 . -1073741824) (341 . <Entity name: 16e92a188e0>) (171 . -2) (290 . 1) (291 . 1) (41 . 0.09375) (42 . 0.09375) (172 . 2) (343 . <Entity name: 16e92a17b70>) (173 . 1) (95 . 3) (174 . 1) (175 . 2) (92 . -1073741824) (292 . 0) (93 . -1056964608) (10 1.0 1.0 1.0) (43 . 0.0) (176 . 0) (293 . 0) (294 . 0) (178 . 0) (179 . 3) (45 . 12.8) (271 . 0) (272 . 9) (273 . 9) (295 . 0))

I've only been able to successfully adjust the first (11) settings just after "ROOF SHEATHING".

I have a vla lisp that does the same thing but i've also had negative results finding a solution there as well.