y2-for-win

Constraints function decompiled:

_BOOL8 __fastcall constraints(char *a1)
{
return a1[13] * a1[9] - a1[23] == 10401
&& *a1 + a1[5] * a1[2] == 9147
&& a1[2] * a1[8] - a1[13] == 10340
&& a1[7] + a1[6] - a1[23] == 138
&& a1[18] + a1[15] - a1[14] == 70
&& a1[19] - a1[12] * a1[24] == -5808
&& a1[21] * a1[16] - a1[10] == 4726
&& a1[4] * a1[17] - a1[22] == 13130
&& a1[3] * a1[1] - a1[11] == 2395
&& a1[20] + a1[3] * a1[11] == 5214
&& a1[8] * a1[5] - a1[20] == 10332
&& *a1 - a1[16] - a1[16] == -68
&& a1[22] + a1[13] - a1[6] == 103
&& a1[18] - a1[12] - a1[21] == -54
&& a1[10] * a1[15] - a1[9] == 13828
&& a1[19] + a1[24] - a1[14] == 129
&& a1[4] * a1[17] - a1[7] == 13140
&& a1[8] + a1[14] - a1[1] == 154
&& a1[23] + a1[17] - a1[9] == 69
&& a1[19] * a1[10] + a1[3] == 12901
&& a1[5] + a1[21] * a1[12] == 2696
&& a1[6] - a1[1] + a1[24] == 167
&& *a1 + a1[4] * a1[15] == 13577
&& a1[7] - a1[18] - a1[20] == -81
&& a1[22] + a1[11] * a1[2] == 9975
&& a1[9] + a1[19] * a1[8] == 11975
&& a1[10] - a1[23] + *a1 == 192
&& a1[14] + a1[21] * a1[3] == 2594
&& a1[16] + a1[12] + a1[1] == 197
&& a1[6] + a1[20] - a1[13] == 110
&& a1[5] - a1[21] + a1[16] == 139;
}

Script to solve the constraints:

from z3 import *

x_0 = Int('x_0')
x_1 = Int('x_1')
x_2 = Int('x_2')
x_3 = Int('x_3')
x_4 = Int('x_4')
x_5 = Int('x_5')
x_6 = Int('x_6')
x_7 = Int('x_7')
x_8 = Int('x_8')
x_9 = Int('x_9')
x_10 = Int('x_10')
x_11 = Int('x_11')
x_12 = Int('x_12')
x_13 = Int('x_13')
x_14 = Int('x_14')
x_15 = Int('x_15')
x_16 = Int('x_16')
x_17 = Int('x_17')
x_18 = Int('x_18')
x_19 = Int('x_19')
x_20 = Int('x_20')
x_21 = Int('x_21')
x_22 = Int('x_22')
x_23 = Int('x_23')
x_24 = Int('x_24')

s = Solver()

s.add(x_13 * x_9 - x_23 == 10401)
s.add(x_0 + x_5 * x_2 == 9147)
s.add(x_2 * x_8 - x_13 == 10340)
s.add(x_7 + x_6 - x_23 == 138)
s.add(x_18 + x_15 - x_14 == 70)
s.add(x_19 - x_12 * x_24 == -5808)
s.add(x_21 * x_16 - x_10 == 4726)
s.add(x_4 * x_17 - x_22 == 13130)
s.add(x_3 * x_1 - x_11 == 2395)
s.add(x_20 + x_3 * x_11 == 5214)
s.add(x_8 * x_5 - x_20 == 10332)
s.add(x_0 - x_16 - x_16 == -68)
s.add(x_22 + x_13 - x_6 == 103)
s.add(x_18 - x_12 - x_21 == -54)
s.add(x_10 * x_15 - x_9 == 13828)
s.add(x_19 + x_24 - x_14 == 129)
s.add(x_4 * x_17 - x_7 == 13140)
s.add(x_8 + x_14 - x_1 == 154)
s.add(x_23 + x_17 - x_9 == 69)
s.add(x_19 * x_10 + x_3 == 12901)
s.add(x_5 + x_21 * x_12 == 2696)
s.add(x_6 - x_1 + x_24 == 167)
s.add(x_0 + x_4 * x_15 == 13577)
s.add(x_7 - x_18 - x_20 == -81)
s.add(x_22 + x_11 * x_2 == 9975)
s.add(x_9 + x_19 * x_8 == 11975)
s.add(x_10 - x_23 + x_0 == 192)
s.add(x_14 + x_21 * x_3 == 2594)
s.add(x_16 + x_12 + x_1 == 197)
s.add(x_5 - x_21 + x_16 == 139)
s.add(x_6 + x_20 - x_13 == 110)

print(s.check())
print(s.model())

After this, the solutions can be mapped to characters and concatenated.