Find all pairs of positive integers $(x, y)$ so that
$$(xy - 6)^2 | x^2 + y^2$$
To find all pairs of positive integers \((x, y)\) such that \((xy - 6)^2 \mid x^2 + y^2\), we will analyze different cases based on the values of \(y\).

1. **Case \(y = 1\):**
   \[
   (x \cdot 1 - 6)^2 \mid x^2 + 1 \implies (x - 6)^2 \mid x^2 + 1
   \]
   Let \(d = x - 6\). Then, we have:
   \[
   d^2 \mid (d + 6)^2 + 1 \implies d^2 \mid d^2 + 12d + 36 + 1 \implies d^2 \mid 12d + 37
   \]
   Since \(d^2 \mid 12d + 37\), \(d\) must be a divisor of 37. The divisors of 37 are \(\pm 1, \pm 37\). Since \(d\) must be positive, we have \(d = 1\) or \(d = 37\).

   - If \(d = 1\), then \(x - 6 = 1 \implies x = 7\).
   - If \(d = 37\), then \(x - 6 = 37 \implies x = 43\).

   However, we need to check if these values satisfy the original condition:
   - For \(x = 7\), \((7 - 6)^2 = 1 \mid 7^2 + 1 = 50\), which is true.
   - For \(x = 43\), \((43 - 6)^2 = 37^2 = 1369 \mid 43^2 + 1 = 1850\), which is false.

   Therefore, the valid solution for \(y = 1\) is \((x, y) = (7, 1)\).

2. **Case \(y = 2\):**
   \[
   (x \cdot 2 - 6)^2 \mid x^2 + 4 \implies (2x - 6)^2 \mid x^2 + 4
   \]
   Let \(d = 2x - 6\). Then, we have:
   \[
   d^2 \mid \left(\frac{d + 6}{2}\right)^2 + 4 \implies d^2 \mid \frac{d^2 + 12d + 36}{4} + 4 \implies d^2 \mid \frac{d^2 + 12d + 52}{4}
   \]
   Simplifying, we get:
   \[
   4d^2 \mid d^2 + 12d + 52 \implies 4d^2 \mid 3d^2 + 12d + 52
   \]
   Since \(d\) must be an integer, we solve for \(d\):
   \[
   d = 2x - 6 \implies 2x = d + 6 \implies x = \frac{d + 6}{2}
   \]
   We need \(d\) such that \(d^2 \mid 3d^2 + 12d + 52\). Testing small values:
   - If \(d = 2\), then \(x = \frac{2 + 6}{2} = 4\).

   Therefore, the valid solution for \(y = 2\) is \((x, y) = (4, 2)\).

3. **Case \(y \geq 3\):**
   \[
   (xy - 6)^2 \leq x^2 + y^2 \implies (3x - 6)^2 \leq x^2 + y^2
   \]
   Simplifying, we get:
   \[
   9x^2 - 36x + 36 \leq x^2 + y^2 \implies 8x^2 - 36x + 36 \leq y^2
   \]
   Since \(y \geq 3\), we test small values of \(x\) and \(y\):
   - If \(x = 3\) and \(y = 3\), then \((3 \cdot 3 - 6)^2 = 3^2 = 9 \mid 3^2 + 3^2 = 18\), which is true.

   Therefore, the valid solution for \(y \geq 3\) is \((x, y) = (3, 3)\).

Combining all valid solutions, we have:
\[
(x, y) = (7, 1), (4, 2), (3, 3)
\]

The final answer is \( \boxed{ (7, 1), (4, 2), (3, 3) } \)