Help! Bricked my Ardunio Mega2560 Rev 3

Thanks heaps Nick. I've done that to both but diff doesn't help me as the dump is much larger (it starts at 0) and I really don't know how to use it properly.

Here's a small example: provided the addressing translates and is correct, they are the same:

From the original 'stk500boot_v2_mega2560.hex' (I've skipped the first part because it's repetitive)

   3e0e0:	0d 94 1f f3 	jmp	0x3e63e	;  0x3e63e
   3e0e4:	41 54       	subi	r20, 0x41	; 65
   3e0e6:	6d 65       	ori	r22, 0x5D	; 93
   3e0e8:	67 61       	ori	r22, 0x17	; 23
   3e0ea:	32 35       	cpi	r19, 0x52	; 82
   3e0ec:	36 30       	cpi	r19, 0x06	; 6
   3e0ee:	00 41       	sbci	r16, 0x10	; 16
   3e0f0:	72 64       	ori	r23, 0x42	; 66

From the dump (again I've skipped the first part because it's repetitive)

    e0e0:	0d 94 1f f3 	jmp	0x3e63e	;  0x3e63e
    e0e4:	41 54       	subi	r20, 0x41	; 65
    e0e6:	6d 65       	ori	r22, 0x5D	; 93
    e0e8:	67 61       	ori	r22, 0x17	; 23
    e0ea:	32 35       	cpi	r19, 0x52	; 82
    e0ec:	36 30       	cpi	r19, 0x06	; 6
    e0ee:	00 41       	sbci	r16, 0x10	; 16
    e0f0:	72 64       	ori	r23, 0x42	; 66

Note the very different addressing 'e0e4' on the dump and '3e0e4'. Is the bootloader simply in the wrong address because of the crappy USBasp programmer?