| RWByteAddressBuffer buffer : register(u0); |
| buffer.GetDimensions(v_3); |
| uint v_4 = ((v_3 / 64u) - 1u); |
| uint v_5 = min(uint(v_1), v_4); |
| uint v_6 = (min(uint(v_2), 3u) * 16u); |
| int v_8 = (asint(buffer.Load((((0u + (v_5 * 64u)) + v_6) + (min(uint(v_7), 3u) * 4u)))) - int(1)); |
| buffer.Store((((0u + (v_5 * 64u)) + v_6) + (min(uint(v_7), 3u) * 4u)), asuint(v_8)); |
| buffer.GetDimensions(v_11); |
| uint v_12 = ((v_11 / 64u) - 1u); |
| uint v_13 = min(uint(v_9), v_12); |
| uint v_14 = (min(uint(v_10), 3u) * 16u); |
| int v_16 = (asint(buffer.Load((((0u + (v_13 * 64u)) + v_14) + (min(uint(v_15), 3u) * 4u)))) - int(1)); |
| buffer.Store((((0u + (v_13 * 64u)) + v_14) + (min(uint(v_15), 3u) * 4u)), asuint(v_16)); |
| void unused_entry_point() { |