I don't know that Windows uses the HPGL language to drive an HP LaserJet. Or even PCL. But, if it did, things would be easy. All you need to do is trap the HPGL and translate it to GCODE and that's going to be very simple.
I did the reverse: I converted a LaserJet into a plotter. I have an implementation of an IBM 1130 running on an FPGA. One of the most important peripherals, to me, was the CalComp 1627 Drum Plotter. The 1130 emitted 100 6 bit codes per inch of travel. The codes were sparse, consisting of Pen Up, Pen Down, +x, -x, +y, -y. Obviously some combinations are mutually exclusive.
So, in keeping with the concept of not changing the factory software, I send these codes to an ARM board (mbed LPC1768) where I accumulate steps, as appropriate, and ultimately convert the steps to HPGL which I send over the network to the LaserJet.
It was a simple project. PCL/HPGL is well documented.
The thing is, I don't know what the Windows driver sends to the LaserJet. One way to find out is to ask around. The other way is to build a TCP client on a Linux box that will become a printer as far as Windows is concerned. The client will grab the data and store it for later analysis. If it is RAW data, you're out of luck with that particular driver. There may be optional drivers.
It seems to me that getting to GCODE from HPGL would be pretty simple. From RAW, not so easy... What does Linux CUPS bring to the dance?