Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

New Puzzle - 0CTF 2021 lalamblambdadambda #15

Open
Labels
@ThinerDAS

Description

Original author of the CTF challenge is believed to be @hzqmwne

def sat(x: str): 
 """0CTF 2021 lalamblambdadambda pseudo code, all rights belong to original author of challenge"""
 buf = bytes.fromhex(s[:16])
 S0 = []
 for i in range(8):
 for j in range(8):
 S0.append(((lambda b:lambda a:a),(lambda b:lambda a:b))[1&(buf[i]>>j)])
 S1 = [True,False]
 
 f1 = (lambda c:lambda b:lambda a:c(b)(a))
 f5 = (lambda c:lambda b:lambda a:f1(a)(c)(b))
 f6 = (lambda b:lambda a:f5(b)(a))
 f7 = (lambda d:lambda c:lambda b:lambda a:f5(f5(d)(c))(f5(b)(a)))
 f8 = (lambda d:lambda c:lambda b:lambda a:f5(f6(d)(c))(f6(b)(a)))
 f9 = (lambda h:lambda g:lambda f:lambda e:lambda d:lambda c:lambda b:lambda a:f5(f8(h)(g)(f)(e))(f8(d)(c)(b)(a)))
 f12 = (lambda b:lambda a:a)
 f13 = (lambda a:f12)
 f15 = f5(f5(f5(f5(f5(f12)(f12))(f5(f12)(f12)))(f5(f5(f12)(f12))(f5(f12)(f12))))(f5(f5(f5(f12)(f12))(f5(f12)(f12)))(f5(f5(f12)(f12))(f5(f12)(f12)))))(f5(f5(f5(f5(f12)(f12))(f5(f12)(f12)))(f5(f5(f12)(f12))(f5(f12)(f12))))(f5(f5(f5(f12)(f12))(f5(f12)(f12)))(f5(f5(f12)(f12))(f5(f12)(f12)))))
 f16 = f5(f15)
 f28 = (
 (lambda b:lambda a:
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b
 (
 b(b(b(b(b(b(a))))))
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 )
 f30 = (lambda b:lambda a:b(a)(b))
 f33 = (lambda b:lambda a:b(b)(a))
 f41 = (lambda b:lambda a:b)
 f42 = (lambda a:a)
 f43 = (lambda c:(lambda a:c(a(a)))((lambda b:c((lambda a:b(b)(a))))))
 f2 = (lambda e:lambda d:lambda c:e((lambda b:lambda a:a(b(d))))((lambda a:c))(f42))
 f3 = (lambda a:a(f13)(f41))
 f10 = (lambda a:a(f12))
 f11 = (lambda a:a(f41))
 f17 = f7(f9(f12)(f12)(f41)(f41)(f12)(f12)(f12)(f12))(f9(f12)(f41)(f41)(f12)(f41)(f41)(f41)(f12))(f9(f12)(f12)(f41)(f41)(f12)(f41)(f12)(f41))(f9(f41)(f12)(f12)(f41)(f12)(f12)(f12)(f41))
 f18 = f7(f9(f12)(f41)(f41)(f12)(f12)(f12)(f12)(f41))(f9(f41)(f12)(f41)(f12)(f12)(f12)(f12)(f41))(f9(f12)(f12)(f41)(f12)(f12)(f41)(f41)(f12))(f9(f12)(f41)(f41)(f41)(f41)(f41)(f41)(f41))
 f19 = f7(f9(f41)(f12)(f12)(f12)(f12)(f41)(f41)(f12))(f9(f41)(f41)(f41)(f41)(f12)(f12)(f41)(f12))(f9(f41)(f41)(f12)(f12)(f41)(f41)(f12)(f41))(f9(f12)(f41)(f41)(f12)(f12)(f41)(f12)(f12))
 f20 = f7(f9(f41)(f12)(f12)(f12)(f41)(f41)(f41)(f12))(f9(f12)(f41)(f12)(f41)(f41)(f41)(f41)(f41))(f9(f12)(f41)(f41)(f12)(f12)(f12)(f12)(f12))(f9(f41)(f12)(f12)(f41)(f41)(f12)(f12)(f12))
 f21 = f7(f9(f41)(f12)(f12)(f41)(f41)(f41)(f41)(f12))(f9(f12)(f12)(f41)(f41)(f12)(f41)(f41)(f41))(f9(f12)(f41)(f41)(f41)(f41)(f12)(f12)(f41))(f9(f41)(f12)(f41)(f41)(f41)(f12)(f12)(f41))
 f22 = f7(f9(f41)(f41)(f12)(f41)(f41)(f41)(f41)(f41))(f9(f41)(f12)(f12)(f41)(f41)(f12)(f41)(f41))(f9(f12)(f12)(f12)(f12)(f41)(f41)(f41)(f41))(f9(f41)(f41)(f12)(f41)(f12)(f12)(f12)(f12))
 f23 = f7(f9(f41)(f41)(f41)(f41)(f12)(f12)(f12)(f12))(f9(f41)(f41)(f12)(f12)(f41)(f41)(f12)(f12))(f9(f12)(f12)(f12)(f12)(f12)(f41)(f12)(f12))(f9(f41)(f41)(f12)(f41)(f12)(f41)(f12)(f12))
 f29 = (lambda a:f41)
 f32 = (lambda a:a(f12)(f41))
 f34 = (lambda b:lambda a:f33(f30(f32(b))(a))(f30(b)(f32(a))))
 f35 = (lambda b:lambda a:f34(b)(a))
 f36 = (lambda f:lambda e:lambda d:lambda c:(lambda b:(lambda a:f5(f11(a))(f5(f10(a))(f10(b))))(f(e(f41))(d(f41))(f11(b))))(f(e(f12))(d(f12))(c)))
 f37 = (lambda e:lambda d:lambda c:(lambda b:(lambda a:f5(f11(a))(f5(f10(a))(f10(b))))(e(d(f41))(f11(b))))(e(d(f12))(c)))
 f38 = (lambda e:lambda d:lambda c:(lambda b:(lambda a:f5(f11(a))(f5(f10(b))(f10(a))))(e(d(f12))(f11(b))))(e(d(f41))(c)))
 f39 = (lambda c:lambda b:lambda a:f30(c(b(f41))(a(f41)))(c(b(f12))(a(f12))))
 f40 = (lambda c:lambda b:lambda a:f5(c(b(f41))(a(f41)))(c(b(f12))(a(f12))))
 f0 = (lambda c:lambda b:lambda a:f5(f33(f30(c)(b))(f30(f34(c)(b))(a)))(f34(f34(c)(b))(a)))
 f14 = (
 (lambda b:lambda a:
 f10(f36(f36(f36(f36(f36(f0)))))(b)(a)(f12))
 )
 )
 f25 = (
 (lambda a:
 f10(f37(f37(f37(f37(f37(f6)))))(a)(f12))
 )
 )
 f26 = (
 (lambda a:
 f10(f38(f38(f38(f38(f38(f6)))))(a)(f12))
 )
 )
 f27 = f40(f40(f40(f40(f40(f35)))))
 f31 = (lambda b:lambda a:f33(f30(b)(a))(f30(f32(b))(f32(a))))
 f24 = f39(f39(f39(f39(f39(f31)))))
 f4 = (lambda a:f30(f24(f11(a))(f22))(f24(f10(a))(f17)))
 answer = (
 (lambda v50:lambda v49:lambda v48:lambda v47:lambda v46:lambda v45:lambda v44:lambda v43:lambda v42:lambda v41:lambda v40:lambda v39:lambda v38:lambda v37:lambda v36:lambda v35:lambda v34:lambda v33:lambda v32:lambda v31:lambda v30:lambda v29:lambda v28:lambda v27:lambda v26:lambda v25:lambda v24:lambda v23:lambda v22:lambda v21:lambda v20:lambda v19:lambda v18:lambda v17:lambda v16:lambda v15:lambda v14:lambda v13:lambda v12:lambda v11:lambda v10:lambda v9:lambda v8:lambda v7:lambda v6:lambda v5:lambda v4:lambda v3:lambda v2:lambda v1:lambda v0:lambda z:lambda y:lambda x:lambda w:lambda v:lambda u:lambda t:lambda s:lambda r:lambda q:lambda p:lambda o:lambda n:
 f4
 (
 (lambda m:lambda l:
 f10
 (
 f43
 (
 (lambda k:lambda j:lambda i:
 f3(j)(i)
 (
 (lambda h:
 k(f2(j))
 (
 (lambda g:
 (lambda f:
 (lambda e:
 (lambda d:
 (lambda c:
 (lambda b:
 (lambda a:f5(c)(f5(b)(a)))
 (
 f14(d)
 (
 f27
 (
 f27(f14(f25(f25(f25(f25(b)))))(f23))(f14(b)(c))
 )
 (
 f14(f26(f26(f26(f26(f26(b))))))(f18)
 )
 )
 )
 )
 (
 f14(e)
 (
 f27
 (
 f27(f14(f25(f25(f25(f25(d)))))(f19))(f14(d)(c))
 )
 (
 f14(f26(f26(f26(f26(f26(d))))))(f20)
 )
 )
 )
 )
 (f14(f)(f21))
 )
 (f10(f10(g)))
 )
 (f11(f10(g)))
 )
 (f11(g))
 )
 (i)
 )
 (h)
 )
 )
 )
 )
 (f28)(f16(f5(m)(l)))
 )
 )
 (f7(f9(v19)(v20)(v21)(v22)(v23)(v24)(v25)(v26))(f9(v27)(v28)(v29)(v30)(v31)(v32)(v33)(v34))(f9(v35)(v36)(v37)(v38)(v39)(v40)(v41)(v42))(f9(v43)(v44)(v45)(v46)(v47)(v48)(v49)(v50)))(f7(f9(n)(o)(p)(q)(r)(s)(t)(u))(f9(v)(w)(x)(y)(z)(v0)(v1)(v2))(f9(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10))(f9(v11)(v12)(v13)(v14)(v15)(v16)(v17)(v18)))
 )
 )
 (S0[0])(S0[1])(S0[2])(S0[3])(S0[4])(S0[5])(S0[6])(S0[7])(S0[8])(S0[9])(S0[10])(S0[11])(S0[12])(S0[13])(S0[14])(S0[15])(S0[16])(S0[17])(S0[18])(S0[19])(S0[20])(S0[21])(S0[22])(S0[23])(S0[24])(S0[25])(S0[26])(S0[27])(S0[28])(S0[29])(S0[30])(S0[31])(S0[32])(S0[33])(S0[34])(S0[35])(S0[36])(S0[37])(S0[38])(S0[39])(S0[40])(S0[41])(S0[42])(S0[43])(S0[44])(S0[45])(S0[46])(S0[47])(S0[48])(S0[49])(S0[50])(S0[51])(S0[52])(S0[53])(S0[54])(S0[55])(S0[56])(S0[57])(S0[58])(S0[59])(S0[60])(S0[61])(S0[62])(S0[63])(S1[0])(S1[1])
 )
 return answer

Solvers, post your solutions in the comments using the following formatting:

Reveal solution
def sol():
 return 'fe54620f00feb0ad'

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /