Efficient LC3 assembly code to print the numbers leading up to any digit
Points about your program.


The 2 instructions at the top don't match the 3 dumped values! There are 12 lines of source but there are 13 values in the dump. .ORIG X3000 is not an instruction. It's rather a directive and you should not find any value from it in the dump.
Why don't you place the data below the HLT instruction? A much safer place than within the instructions that get executed. Your trick works because of how the BR instruction is encoded.
On an architecture with limited registers available, it's best to try to use as few as possible to get the work done. Your code uses 5 registers where you can easily do it with 2 registers.  
You don't need to use the extra register R4 to find out if the input was 0. AND-ing R1 to itself will not destroy it and will set the flags for inspecting:

AND R1, R1, R1
BRz X300B      ;Skip if input was 0

It's inefficient to branch always to just another branch instruction. See how I solved the same branching.




An improved version.


  My goal is to print all the numbers leading up to a set value


Let's presume the user selects a value from 0 to 9.

For now you've manually set the user's value in R1. You can use it as a (down)counter. You stop the program as soon as a negative value appears.

.ORIG X3000
LEA   R0, X3030     ;Loads "0" in R0[7:0]
BRnzp X3004         ;Go test for 0 input
OUT                 ;Display R0[7:0]
ADD   R0, R0, #1    ;R0++
ADD   R1, R1, #-1   ;R1--
BRzp  X3002         ;Continue with zero or positive
HLT                 ;Stop (R1 = #-1)


OUT only depends on bits [7:0]. The high bits loaded with LEA don't matter.
If you don't like this trick, then go with the usual way of loading a constant from memory:

.ORIG X3000
LD    R0, X3007     ;Loads "0" in R0
BRnzp X3004         ;Go test for 0 input
OUT                 ;Display R0[7:0]
ADD   R0, R0, #1    ;R0++
ADD   R1, R1, #-1   ;R1--
BRzp  X3002         ;Continue with zero or positive
HLT                 ;Stop (R1 = #-1)
.FILL X0030         ;Character "0"