-
-
[原创]2021 KCTF 春季赛 第二题 南冥神功
-
发表于: 2021-5-11 16:05 4960
-
sub_40AD70();
sub_4AF840((
int
)&dword_4B8860,
"Input your code: "
);
sub_4B0AB0((
int
)&dword_4B8680, ipt);
if
( strlen(ipt) <
=
48
)
{
p
=
ipt[
0
];
if
( ipt[
0
] )
{
ii
=
0
;
yy
=
0
;
xx_
=
0
;
is36
=
::is36;
is0
=
c0_z[
0
];
LOOP:
if
( is36 >
0
)
{
jj
=
0
;
if
( is0
=
=
p )
{
LABEL_11:
v7
=
(ii
+
jj
/
6
)
%
6
;
ii_jj
=
jj
+
ii;
xx
=
xx_;
sw2
=
v7;
sw
=
5
-
ii_jj
%
6
;
for
( i
=
0
; ; i
=
1
)
{
switch ( sw )
{
case
1
:
+
+
xx;
break
;
case
2
:
v17
=
(yy
+
+
&
1
)
=
=
0
;
/
/
当前y是偶数则
/
/
x
+
+
y
+
+
/
/
否则 y
+
+
xx
+
=
v17;
break
;
case
3
:
v12
=
(yy
+
+
&
1
) !
=
0
;
/
/
当前y是奇数则
/
/
x
-
-
y
+
+
/
/
否则 y
+
+
xx
-
=
v12;
break
;
case
4
:
-
-
xx;
break
;
case
5
:
v19
=
(yy
-
-
&
1
) !
=
0
;
/
/
当前y是奇数则
/
/
x
-
-
y
-
-
/
/
否则 y
-
-
xx
-
=
v19;
break
;
default:
v18
=
(yy
-
-
&
1
)
=
=
0
;
/
/
当前y是偶数数则
/
/
x
+
+
y
-
-
/
/
否则 y
-
-
xx
+
=
v18;
break
;
}
if
( xx >
9
)
break
;
if
( yy >
8
)
break
;
v13
=
&pz[yy][xx];
/
/
一定要为
0
if
(
*
v13 )
break
;
*
v13
=
1
;
if
( i
=
=
1
)
{
+
+
ii;
xx_
=
xx;
p
=
ipt[ii];
if
( p )
goto LOOP;
goto END;
}
sw
=
sw2;
}
}
else
{
while
( is36 !
=
+
+
jj )
{
if
( c0_z[jj]
=
=
p )
goto LABEL_11;
}
}
}
}
else
{
END:
tst
=
pz;
cc
=
0
;
do
{
v16
=
tst
+
1
;
/
/
tst
90
个都为
1
do
{
cc
+
=
*
(_BYTE
*
)tst
=
=
0
;
tst
=
(char (
*
)[
10
])((char
*
)tst
+
1
);
}
while
( v16 !
=
tst );
}
while
( &pz_end !
=
(_UNKNOWN
*
)v16 );
if
( !cc )
{
sub_4ABF30(&dword_4B8860,
"Good job!"
,
9
);
sub_4AD980(&dword_4B8860);
return
0
;
}
}
}
sub_4ABF30(&dword_4B8860,
"Try again..."
,
12
);
sub_4AD980(&dword_4B8860);
sub_40AD70();
sub_4AF840((
int
)&dword_4B8860,
"Input your code: "
);
sub_4B0AB0((
int
)&dword_4B8680, ipt);
if
( strlen(ipt) <
=
48
)
{
p
=
ipt[
0
];
if
( ipt[
0
] )
{
ii
=
0
;
yy
=
0
;
xx_
=
0
;
is36
=
::is36;
is0
=
c0_z[
0
];
LOOP:
if
( is36 >
0
)
{
jj
=
0
;
if
( is0
=
=
p )
{
LABEL_11:
v7
=
(ii
+
jj
/
6
)
%
6
;
ii_jj
=
jj
+
ii;
xx
=
xx_;
sw2
=
v7;
sw
=
5
-
ii_jj
%
6
;
for
( i
=
0
; ; i
=
1
)
{
switch ( sw )
{
case
1
:
+
+
xx;
break
;
case
2
:
v17
=
(yy
+
+
&
1
)
=
=
0
;
/
/
当前y是偶数则
/
/
x
+
+
y
+
+
/
/
否则 y
+
+
xx
+
=
v17;
break
;
case
3
:
v12
=
(yy
+
+
&
1
) !
=
0
;
/
/
当前y是奇数则
/
/
x
-
-
y
+
+
/
/
否则 y
+
+
xx
-
=
v12;
break
;
case
4
:
-
-
xx;
break
;
case
5
:
v19
=
(yy
-
-
&
1
) !
=
0
;
/
/
当前y是奇数则
/
/
x
-
-
y
-
-
/
/
否则 y
-
-
xx
-
=
v19;
break
;
default:
v18
=
(yy
-
-
&
1
)
=
=
0
;
/
/
当前y是偶数数则
/
/
x
+
+
y
-
-
/
/
否则 y
-
-
xx
+
=
v18;
break
;
}
if
( xx >
9
)
break
;
if
( yy >
8
)
break
;
v13
=
&pz[yy][xx];
/
/
一定要为
0
if
(
*
v13 )
break
;
*
v13
=
1
;
if
( i
=
=
1
)
{
+
+
ii;
xx_
=
xx;
p
=
ipt[ii];
if
( p )
goto LOOP;
goto END;
}
sw
=
sw2;
}
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
赞赏
他的文章
看原图
赞赏
雪币:
留言: