         Edinburgh IMP77 Compiler - Version 8.4
    1 %BEGIN
		.Ltext0:
				.globl	main
		main:
		.LFB185:
		.LVL0:
				pushq	%r13
				pushq	%r12
				pushq	%rbp
				pushq	%rbx
				subq	$3352, %rsp
				movq	%fs:40, %rax
				movq	%rax, 3336(%rsp)
				xorl	%eax, %eax
    2 %STRING(40) S,T,U
				call	_imp_initialise@PLT
		.LVL1:
    3       S=""
    4       S=S."CONCATENATION "
    5       T="SEEMS TO "
				leaq	512(%rsp), %rsi
				movq	%rsp, %rbx
				movl	$40, %edx
				movq	%rbx, %rdi
				call	_imp_strncpy@PLT
		.LVL2:
		.LBB21:
		.LBB22:
    6       S=S.T."WORK OK"
				leaq	3072(%rsp), %rbp
				leaq	1024(%rsp), %rdx
				movq	%rbx, %rsi
				movq	%rbp, %rdi
				call	_imp_join@PLT
		.LVL3:
		.LBE22:
		.LBE21:
				leaq	768(%rsp), %rsi
				movl	$40, %edx
				movq	%rbx, %rdi
				call	_imp_strncpy@PLT
		.LVL4:
    7       S=S."!"
				leaq	1280(%rsp), %rsi
				leaq	256(%rsp), %r13
				movl	$40, %edx
				movq	%r13, %rdi
				call	_imp_strncpy@PLT
		.LVL5:
		.LBB23:
		.LBB24:
		.LBB25:
    8       PRINTSTRING(S)
				leaq	1792(%rsp), %r12
				movq	%r13, %rdx
				movq	%rbx, %rsi
				movq	%r12, %rdi
				call	_imp_join@PLT
		.LVL6:
		.LBE25:
				leaq	2048(%rsp), %rdx
				movq	%r12, %rsi
				movq	%rbp, %rdi
				call	_imp_join@PLT
		.LVL7:
		.LBE24:
		.LBE23:
				leaq	1536(%rsp), %rsi
				movl	$40, %edx
				movq	%rbx, %rdi
				call	_imp_strncpy@PLT
		.LVL8:
		.LBB26:
		.LBB27:
    9 %ENDOFPROGRAM
				leaq	2560(%rsp), %rdx
				movq	%rbx, %rsi
				movq	%rbp, %rdi
				call	_imp_join@PLT
		.LVL9:
		.LBE27:
		.LBE26:
				leaq	2304(%rsp), %rsi
				movl	$40, %edx
				movq	%rbx, %rdi
				call	_imp_strncpy@PLT
		.LVL10:
		.LBB28:
		.LBB29:
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				pushq	3064(%rsp)
				call	_imp_printstring@PLT
		.LVL11:
		.LBE29:
		.LBE28:
		.LBB30:
		.LBB31:
				addq	$256, %rsp
				movl	$0, %edi
				call	exit@PLT
		.LVL12:
		.LBE31:
		.LBE30:
		.LFE185:
		.Letext0:
?U unused
    9 Statements compiled
