"os"
. "github.com/mmcloughlin/avo/build"
- . "github.com/mmcloughlin/avo/operand"
- . "github.com/mmcloughlin/avo/reg"
)
//go:generate go run . -out ../sha256block_amd64.s
Package("crypto/internal/fips140/sha256")
ConstraintExpr("!purego")
- blockAMD64()
blockAVX2()
blockSHANI()
Generate()
}
-// Wt = Mt; for 0 <= t <= 15
-func msgSchedule0(index int) {
- MOVL(Mem{Base: SI}.Offset(index*4), EAX)
- BSWAPL(EAX)
- MOVL(EAX, Mem{Base: BP}.Offset(index*4))
-}
-
-// Wt = SIGMA1(Wt-2) + Wt-7 + SIGMA0(Wt-15) + Wt-16; for 16 <= t <= 63
-//
-// SIGMA0(x) = ROTR(7,x) XOR ROTR(18,x) XOR SHR(3,x)
-// SIGMA1(x) = ROTR(17,x) XOR ROTR(19,x) XOR SHR(10,x)
-func msgSchedule1(index int) {
- MOVL(Mem{Base: BP}.Offset((index-2)*4), EAX)
- MOVL(EAX, ECX)
- RORL(Imm(17), EAX)
- MOVL(ECX, EDX)
- RORL(Imm(19), ECX)
- SHRL(Imm(10), EDX)
- MOVL(Mem{Base: BP}.Offset((index-15)*4), EBX)
- XORL(ECX, EAX)
- MOVL(EBX, ECX)
- XORL(EDX, EAX)
- RORL(Imm(7), EBX)
- MOVL(ECX, EDX)
- SHRL(Imm(3), EDX)
- RORL(Imm(18), ECX)
- ADDL(Mem{Base: BP}.Offset((index-7)*4), EAX)
- XORL(ECX, EBX)
- XORL(EDX, EBX)
- ADDL(Mem{Base: BP}.Offset((index-16)*4), EBX)
- ADDL(EBX, EAX)
- MOVL(EAX, Mem{Base: BP}.Offset((index)*4))
-}
-
-// Calculate T1 in AX - uses AX, CX and DX registers.
-// h is also used as an accumulator. Wt is passed in AX.
-//
-// T1 = h + BIGSIGMA1(e) + Ch(e, f, g) + Kt + Wt
-// BIGSIGMA1(x) = ROTR(6,x) XOR ROTR(11,x) XOR ROTR(25,x)
-// Ch(x, y, z) = (x AND y) XOR (NOT x AND z)
-func sha256T1(konst uint32, e, f, g, h GPPhysical) {
- ADDL(EAX, h)
- MOVL(e, EAX)
- ADDL(U32(konst), h)
- MOVL(e, ECX)
- RORL(U8(6), EAX)
- MOVL(e, EDX)
- RORL(U8(11), ECX)
- XORL(ECX, EAX)
- MOVL(e, ECX)
- RORL(U8(25), EDX)
- ANDL(f, ECX)
- XORL(EAX, EDX)
- MOVL(e, EAX)
- NOTL(EAX)
- ADDL(EDX, h)
- ANDL(g, EAX)
- XORL(ECX, EAX)
- ADDL(h, EAX)
-}
-
-// Calculate T2 in BX - uses BX, CX, DX and DI registers.
-//
-// T2 = BIGSIGMA0(a) + Maj(a, b, c)
-// BIGSIGMA0(x) = ROTR(2,x) XOR ROTR(13,x) XOR ROTR(22,x)
-// Maj(x, y, z) = (x AND y) XOR (x AND z) XOR (y AND z)
-func sha256T2(a, b, c GPPhysical) {
- MOVL(a, EDI)
- MOVL(c, EBX)
- RORL(U8(2), EDI)
- MOVL(a, EDX)
- ANDL(b, EBX)
- RORL(U8(13), EDX)
- MOVL(a, ECX)
- ANDL(c, ECX)
- XORL(EDX, EDI)
- XORL(ECX, EBX)
- MOVL(a, EDX)
- MOVL(b, ECX)
- RORL(U8(22), EDX)
- ANDL(a, ECX)
- XORL(ECX, EBX)
- XORL(EDX, EDI)
- ADDL(EDI, EBX)
-}
-
-// Calculate T1 and T2, then e = d + T1 and a = T1 + T2.
-// The values for e and a are stored in d and h, ready for rotation.
-func sha256Round(index int, konst uint32, a, b, c, d, e, f, g, h GPPhysical) {
- sha256T1(konst, e, f, g, h)
- sha256T2(a, b, c)
- MOVL(EBX, h)
- ADDL(EAX, d)
- ADDL(EAX, h)
-}
-
-func sha256Round0(index int, konst uint32, a, b, c, d, e, f, g, h GPPhysical) {
- msgSchedule0(index)
- sha256Round(index, konst, a, b, c, d, e, f, g, h)
-}
-
-func sha256Round1(index int, konst uint32, a, b, c, d, e, f, g, h GPPhysical) {
- msgSchedule1(index)
- sha256Round(index, konst, a, b, c, d, e, f, g, h)
-}
-
-func blockAMD64() {
- Implement("blockAMD64")
- AllocLocal(256 + 8)
-
- Load(Param("p").Base(), RSI)
- Load(Param("p").Len(), RDX)
- SHRQ(Imm(6), RDX)
- SHLQ(Imm(6), RDX)
-
- // Return if p is empty
- LEAQ(Mem{Base: RSI, Index: RDX, Scale: 1}, RDI)
- MOVQ(RDI, Mem{Base: SP}.Offset(256))
- CMPQ(RSI, RDI)
- JEQ(LabelRef("end"))
-
- BP := Mem{Base: BP}
- Load(Param("dig"), RBP)
- MOVL(BP.Offset(0*4), R8L) // a = H0
- MOVL(BP.Offset(1*4), R9L) // b = H1
- MOVL(BP.Offset(2*4), R10L) // c = H2
- MOVL(BP.Offset(3*4), R11L) // d = H3
- MOVL(BP.Offset(4*4), R12L) // e = H4
- MOVL(BP.Offset(5*4), R13L) // f = H5
- MOVL(BP.Offset(6*4), R14L) // g = H6
- MOVL(BP.Offset(7*4), R15L) // h = H7
-
- loop()
- end()
-}
-
-func rotateRight(slice *[]GPPhysical) []GPPhysical {
- n := len(*slice)
- new := make([]GPPhysical, n)
- for i, reg := range *slice {
- new[(i+1)%n] = reg
- }
- return new
-}
-
-func loop() {
- Label("loop")
- MOVQ(RSP, RBP)
-
- regs := []GPPhysical{R8L, R9L, R10L, R11L, R12L, R13L, R14L, R15L}
- n := len(_K)
-
- for i := 0; i < 16; i++ {
- sha256Round0(i, _K[i], regs[0], regs[1], regs[2], regs[3], regs[4], regs[5], regs[6], regs[7])
- regs = rotateRight(®s)
- }
-
- for i := 16; i < n; i++ {
- sha256Round1(i, _K[i], regs[0], regs[1], regs[2], regs[3], regs[4], regs[5], regs[6], regs[7])
- regs = rotateRight(®s)
- }
-
- Load(Param("dig"), RBP)
- BP := Mem{Base: BP}
- ADDL(BP.Offset(0*4), R8L) // H0 = a + H0
- MOVL(R8L, BP.Offset(0*4))
- ADDL(BP.Offset(1*4), R9L) // H1 = b + H1
- MOVL(R9L, BP.Offset(1*4))
- ADDL(BP.Offset(2*4), R10L) // H2 = c + H2
- MOVL(R10L, BP.Offset(2*4))
- ADDL(BP.Offset(3*4), R11L) // H3 = d + H3
- MOVL(R11L, BP.Offset(3*4))
- ADDL(BP.Offset(4*4), R12L) // H4 = e + H4
- MOVL(R12L, BP.Offset(4*4))
- ADDL(BP.Offset(5*4), R13L) // H5 = f + H5
- MOVL(R13L, BP.Offset(5*4))
- ADDL(BP.Offset(6*4), R14L) // H6 = g + H6
- MOVL(R14L, BP.Offset(6*4))
- ADDL(BP.Offset(7*4), R15L) // H7 = h + H7
- MOVL(R15L, BP.Offset(7*4))
-
- ADDQ(Imm(64), RSI)
- CMPQ(RSI, Mem{Base: SP}.Offset(256))
- JB(LabelRef("loop"))
-}
-
-func end() {
- Label("end")
- RET()
-}
-
var _K = []uint32{
0x428a2f98,
0x71374491,
impl.Register("sha256", "SHA-NI", &useSHANI)
}
-//go:noescape
-func blockAMD64(dig *Digest, p []byte)
-
//go:noescape
func blockAVX2(dig *Digest, p []byte)
} else if useAVX2 {
blockAVX2(dig, p)
} else {
- blockAMD64(dig, p)
+ blockGeneric(dig, p)
}
}
#include "textflag.h"
-// func blockAMD64(dig *Digest, p []byte)
-TEXT ·blockAMD64(SB), $264-32
- MOVQ p_base+8(FP), SI
- MOVQ p_len+16(FP), DX
- SHRQ $0x06, DX
- SHLQ $0x06, DX
- LEAQ (SI)(DX*1), DI
- MOVQ DI, 256(SP)
- CMPQ SI, DI
- JEQ end
- MOVQ dig+0(FP), BP
- MOVL (BP), R8
- MOVL 4(BP), R9
- MOVL 8(BP), R10
- MOVL 12(BP), R11
- MOVL 16(BP), R12
- MOVL 20(BP), R13
- MOVL 24(BP), R14
- MOVL 28(BP), R15
-
-loop:
- MOVQ SP, BP
- MOVL (SI), AX
- BSWAPL AX
- MOVL AX, (BP)
- ADDL AX, R15
- MOVL R12, AX
- ADDL $0x428a2f98, R15
- MOVL R12, CX
- RORL $0x06, AX
- MOVL R12, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R12, CX
- RORL $0x19, DX
- ANDL R13, CX
- XORL AX, DX
- MOVL R12, AX
- NOTL AX
- ADDL DX, R15
- ANDL R14, AX
- XORL CX, AX
- ADDL R15, AX
- MOVL R8, DI
- MOVL R10, BX
- RORL $0x02, DI
- MOVL R8, DX
- ANDL R9, BX
- RORL $0x0d, DX
- MOVL R8, CX
- ANDL R10, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R8, DX
- MOVL R9, CX
- RORL $0x16, DX
- ANDL R8, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R15
- ADDL AX, R11
- ADDL AX, R15
- MOVL 4(SI), AX
- BSWAPL AX
- MOVL AX, 4(BP)
- ADDL AX, R14
- MOVL R11, AX
- ADDL $0x71374491, R14
- MOVL R11, CX
- RORL $0x06, AX
- MOVL R11, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R11, CX
- RORL $0x19, DX
- ANDL R12, CX
- XORL AX, DX
- MOVL R11, AX
- NOTL AX
- ADDL DX, R14
- ANDL R13, AX
- XORL CX, AX
- ADDL R14, AX
- MOVL R15, DI
- MOVL R9, BX
- RORL $0x02, DI
- MOVL R15, DX
- ANDL R8, BX
- RORL $0x0d, DX
- MOVL R15, CX
- ANDL R9, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R15, DX
- MOVL R8, CX
- RORL $0x16, DX
- ANDL R15, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R14
- ADDL AX, R10
- ADDL AX, R14
- MOVL 8(SI), AX
- BSWAPL AX
- MOVL AX, 8(BP)
- ADDL AX, R13
- MOVL R10, AX
- ADDL $0xb5c0fbcf, R13
- MOVL R10, CX
- RORL $0x06, AX
- MOVL R10, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R10, CX
- RORL $0x19, DX
- ANDL R11, CX
- XORL AX, DX
- MOVL R10, AX
- NOTL AX
- ADDL DX, R13
- ANDL R12, AX
- XORL CX, AX
- ADDL R13, AX
- MOVL R14, DI
- MOVL R8, BX
- RORL $0x02, DI
- MOVL R14, DX
- ANDL R15, BX
- RORL $0x0d, DX
- MOVL R14, CX
- ANDL R8, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R14, DX
- MOVL R15, CX
- RORL $0x16, DX
- ANDL R14, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R13
- ADDL AX, R9
- ADDL AX, R13
- MOVL 12(SI), AX
- BSWAPL AX
- MOVL AX, 12(BP)
- ADDL AX, R12
- MOVL R9, AX
- ADDL $0xe9b5dba5, R12
- MOVL R9, CX
- RORL $0x06, AX
- MOVL R9, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R9, CX
- RORL $0x19, DX
- ANDL R10, CX
- XORL AX, DX
- MOVL R9, AX
- NOTL AX
- ADDL DX, R12
- ANDL R11, AX
- XORL CX, AX
- ADDL R12, AX
- MOVL R13, DI
- MOVL R15, BX
- RORL $0x02, DI
- MOVL R13, DX
- ANDL R14, BX
- RORL $0x0d, DX
- MOVL R13, CX
- ANDL R15, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R13, DX
- MOVL R14, CX
- RORL $0x16, DX
- ANDL R13, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R12
- ADDL AX, R8
- ADDL AX, R12
- MOVL 16(SI), AX
- BSWAPL AX
- MOVL AX, 16(BP)
- ADDL AX, R11
- MOVL R8, AX
- ADDL $0x3956c25b, R11
- MOVL R8, CX
- RORL $0x06, AX
- MOVL R8, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R8, CX
- RORL $0x19, DX
- ANDL R9, CX
- XORL AX, DX
- MOVL R8, AX
- NOTL AX
- ADDL DX, R11
- ANDL R10, AX
- XORL CX, AX
- ADDL R11, AX
- MOVL R12, DI
- MOVL R14, BX
- RORL $0x02, DI
- MOVL R12, DX
- ANDL R13, BX
- RORL $0x0d, DX
- MOVL R12, CX
- ANDL R14, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R12, DX
- MOVL R13, CX
- RORL $0x16, DX
- ANDL R12, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R11
- ADDL AX, R15
- ADDL AX, R11
- MOVL 20(SI), AX
- BSWAPL AX
- MOVL AX, 20(BP)
- ADDL AX, R10
- MOVL R15, AX
- ADDL $0x59f111f1, R10
- MOVL R15, CX
- RORL $0x06, AX
- MOVL R15, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R15, CX
- RORL $0x19, DX
- ANDL R8, CX
- XORL AX, DX
- MOVL R15, AX
- NOTL AX
- ADDL DX, R10
- ANDL R9, AX
- XORL CX, AX
- ADDL R10, AX
- MOVL R11, DI
- MOVL R13, BX
- RORL $0x02, DI
- MOVL R11, DX
- ANDL R12, BX
- RORL $0x0d, DX
- MOVL R11, CX
- ANDL R13, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R11, DX
- MOVL R12, CX
- RORL $0x16, DX
- ANDL R11, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R10
- ADDL AX, R14
- ADDL AX, R10
- MOVL 24(SI), AX
- BSWAPL AX
- MOVL AX, 24(BP)
- ADDL AX, R9
- MOVL R14, AX
- ADDL $0x923f82a4, R9
- MOVL R14, CX
- RORL $0x06, AX
- MOVL R14, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R14, CX
- RORL $0x19, DX
- ANDL R15, CX
- XORL AX, DX
- MOVL R14, AX
- NOTL AX
- ADDL DX, R9
- ANDL R8, AX
- XORL CX, AX
- ADDL R9, AX
- MOVL R10, DI
- MOVL R12, BX
- RORL $0x02, DI
- MOVL R10, DX
- ANDL R11, BX
- RORL $0x0d, DX
- MOVL R10, CX
- ANDL R12, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R10, DX
- MOVL R11, CX
- RORL $0x16, DX
- ANDL R10, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R9
- ADDL AX, R13
- ADDL AX, R9
- MOVL 28(SI), AX
- BSWAPL AX
- MOVL AX, 28(BP)
- ADDL AX, R8
- MOVL R13, AX
- ADDL $0xab1c5ed5, R8
- MOVL R13, CX
- RORL $0x06, AX
- MOVL R13, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R13, CX
- RORL $0x19, DX
- ANDL R14, CX
- XORL AX, DX
- MOVL R13, AX
- NOTL AX
- ADDL DX, R8
- ANDL R15, AX
- XORL CX, AX
- ADDL R8, AX
- MOVL R9, DI
- MOVL R11, BX
- RORL $0x02, DI
- MOVL R9, DX
- ANDL R10, BX
- RORL $0x0d, DX
- MOVL R9, CX
- ANDL R11, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R9, DX
- MOVL R10, CX
- RORL $0x16, DX
- ANDL R9, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R8
- ADDL AX, R12
- ADDL AX, R8
- MOVL 32(SI), AX
- BSWAPL AX
- MOVL AX, 32(BP)
- ADDL AX, R15
- MOVL R12, AX
- ADDL $0xd807aa98, R15
- MOVL R12, CX
- RORL $0x06, AX
- MOVL R12, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R12, CX
- RORL $0x19, DX
- ANDL R13, CX
- XORL AX, DX
- MOVL R12, AX
- NOTL AX
- ADDL DX, R15
- ANDL R14, AX
- XORL CX, AX
- ADDL R15, AX
- MOVL R8, DI
- MOVL R10, BX
- RORL $0x02, DI
- MOVL R8, DX
- ANDL R9, BX
- RORL $0x0d, DX
- MOVL R8, CX
- ANDL R10, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R8, DX
- MOVL R9, CX
- RORL $0x16, DX
- ANDL R8, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R15
- ADDL AX, R11
- ADDL AX, R15
- MOVL 36(SI), AX
- BSWAPL AX
- MOVL AX, 36(BP)
- ADDL AX, R14
- MOVL R11, AX
- ADDL $0x12835b01, R14
- MOVL R11, CX
- RORL $0x06, AX
- MOVL R11, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R11, CX
- RORL $0x19, DX
- ANDL R12, CX
- XORL AX, DX
- MOVL R11, AX
- NOTL AX
- ADDL DX, R14
- ANDL R13, AX
- XORL CX, AX
- ADDL R14, AX
- MOVL R15, DI
- MOVL R9, BX
- RORL $0x02, DI
- MOVL R15, DX
- ANDL R8, BX
- RORL $0x0d, DX
- MOVL R15, CX
- ANDL R9, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R15, DX
- MOVL R8, CX
- RORL $0x16, DX
- ANDL R15, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R14
- ADDL AX, R10
- ADDL AX, R14
- MOVL 40(SI), AX
- BSWAPL AX
- MOVL AX, 40(BP)
- ADDL AX, R13
- MOVL R10, AX
- ADDL $0x243185be, R13
- MOVL R10, CX
- RORL $0x06, AX
- MOVL R10, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R10, CX
- RORL $0x19, DX
- ANDL R11, CX
- XORL AX, DX
- MOVL R10, AX
- NOTL AX
- ADDL DX, R13
- ANDL R12, AX
- XORL CX, AX
- ADDL R13, AX
- MOVL R14, DI
- MOVL R8, BX
- RORL $0x02, DI
- MOVL R14, DX
- ANDL R15, BX
- RORL $0x0d, DX
- MOVL R14, CX
- ANDL R8, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R14, DX
- MOVL R15, CX
- RORL $0x16, DX
- ANDL R14, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R13
- ADDL AX, R9
- ADDL AX, R13
- MOVL 44(SI), AX
- BSWAPL AX
- MOVL AX, 44(BP)
- ADDL AX, R12
- MOVL R9, AX
- ADDL $0x550c7dc3, R12
- MOVL R9, CX
- RORL $0x06, AX
- MOVL R9, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R9, CX
- RORL $0x19, DX
- ANDL R10, CX
- XORL AX, DX
- MOVL R9, AX
- NOTL AX
- ADDL DX, R12
- ANDL R11, AX
- XORL CX, AX
- ADDL R12, AX
- MOVL R13, DI
- MOVL R15, BX
- RORL $0x02, DI
- MOVL R13, DX
- ANDL R14, BX
- RORL $0x0d, DX
- MOVL R13, CX
- ANDL R15, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R13, DX
- MOVL R14, CX
- RORL $0x16, DX
- ANDL R13, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R12
- ADDL AX, R8
- ADDL AX, R12
- MOVL 48(SI), AX
- BSWAPL AX
- MOVL AX, 48(BP)
- ADDL AX, R11
- MOVL R8, AX
- ADDL $0x72be5d74, R11
- MOVL R8, CX
- RORL $0x06, AX
- MOVL R8, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R8, CX
- RORL $0x19, DX
- ANDL R9, CX
- XORL AX, DX
- MOVL R8, AX
- NOTL AX
- ADDL DX, R11
- ANDL R10, AX
- XORL CX, AX
- ADDL R11, AX
- MOVL R12, DI
- MOVL R14, BX
- RORL $0x02, DI
- MOVL R12, DX
- ANDL R13, BX
- RORL $0x0d, DX
- MOVL R12, CX
- ANDL R14, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R12, DX
- MOVL R13, CX
- RORL $0x16, DX
- ANDL R12, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R11
- ADDL AX, R15
- ADDL AX, R11
- MOVL 52(SI), AX
- BSWAPL AX
- MOVL AX, 52(BP)
- ADDL AX, R10
- MOVL R15, AX
- ADDL $0x80deb1fe, R10
- MOVL R15, CX
- RORL $0x06, AX
- MOVL R15, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R15, CX
- RORL $0x19, DX
- ANDL R8, CX
- XORL AX, DX
- MOVL R15, AX
- NOTL AX
- ADDL DX, R10
- ANDL R9, AX
- XORL CX, AX
- ADDL R10, AX
- MOVL R11, DI
- MOVL R13, BX
- RORL $0x02, DI
- MOVL R11, DX
- ANDL R12, BX
- RORL $0x0d, DX
- MOVL R11, CX
- ANDL R13, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R11, DX
- MOVL R12, CX
- RORL $0x16, DX
- ANDL R11, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R10
- ADDL AX, R14
- ADDL AX, R10
- MOVL 56(SI), AX
- BSWAPL AX
- MOVL AX, 56(BP)
- ADDL AX, R9
- MOVL R14, AX
- ADDL $0x9bdc06a7, R9
- MOVL R14, CX
- RORL $0x06, AX
- MOVL R14, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R14, CX
- RORL $0x19, DX
- ANDL R15, CX
- XORL AX, DX
- MOVL R14, AX
- NOTL AX
- ADDL DX, R9
- ANDL R8, AX
- XORL CX, AX
- ADDL R9, AX
- MOVL R10, DI
- MOVL R12, BX
- RORL $0x02, DI
- MOVL R10, DX
- ANDL R11, BX
- RORL $0x0d, DX
- MOVL R10, CX
- ANDL R12, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R10, DX
- MOVL R11, CX
- RORL $0x16, DX
- ANDL R10, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R9
- ADDL AX, R13
- ADDL AX, R9
- MOVL 60(SI), AX
- BSWAPL AX
- MOVL AX, 60(BP)
- ADDL AX, R8
- MOVL R13, AX
- ADDL $0xc19bf174, R8
- MOVL R13, CX
- RORL $0x06, AX
- MOVL R13, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R13, CX
- RORL $0x19, DX
- ANDL R14, CX
- XORL AX, DX
- MOVL R13, AX
- NOTL AX
- ADDL DX, R8
- ANDL R15, AX
- XORL CX, AX
- ADDL R8, AX
- MOVL R9, DI
- MOVL R11, BX
- RORL $0x02, DI
- MOVL R9, DX
- ANDL R10, BX
- RORL $0x0d, DX
- MOVL R9, CX
- ANDL R11, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R9, DX
- MOVL R10, CX
- RORL $0x16, DX
- ANDL R9, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R8
- ADDL AX, R12
- ADDL AX, R8
- MOVL 56(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 4(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 36(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL (BP), BX
- ADDL BX, AX
- MOVL AX, 64(BP)
- ADDL AX, R15
- MOVL R12, AX
- ADDL $0xe49b69c1, R15
- MOVL R12, CX
- RORL $0x06, AX
- MOVL R12, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R12, CX
- RORL $0x19, DX
- ANDL R13, CX
- XORL AX, DX
- MOVL R12, AX
- NOTL AX
- ADDL DX, R15
- ANDL R14, AX
- XORL CX, AX
- ADDL R15, AX
- MOVL R8, DI
- MOVL R10, BX
- RORL $0x02, DI
- MOVL R8, DX
- ANDL R9, BX
- RORL $0x0d, DX
- MOVL R8, CX
- ANDL R10, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R8, DX
- MOVL R9, CX
- RORL $0x16, DX
- ANDL R8, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R15
- ADDL AX, R11
- ADDL AX, R15
- MOVL 60(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 8(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 40(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 4(BP), BX
- ADDL BX, AX
- MOVL AX, 68(BP)
- ADDL AX, R14
- MOVL R11, AX
- ADDL $0xefbe4786, R14
- MOVL R11, CX
- RORL $0x06, AX
- MOVL R11, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R11, CX
- RORL $0x19, DX
- ANDL R12, CX
- XORL AX, DX
- MOVL R11, AX
- NOTL AX
- ADDL DX, R14
- ANDL R13, AX
- XORL CX, AX
- ADDL R14, AX
- MOVL R15, DI
- MOVL R9, BX
- RORL $0x02, DI
- MOVL R15, DX
- ANDL R8, BX
- RORL $0x0d, DX
- MOVL R15, CX
- ANDL R9, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R15, DX
- MOVL R8, CX
- RORL $0x16, DX
- ANDL R15, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R14
- ADDL AX, R10
- ADDL AX, R14
- MOVL 64(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 12(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 44(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 8(BP), BX
- ADDL BX, AX
- MOVL AX, 72(BP)
- ADDL AX, R13
- MOVL R10, AX
- ADDL $0x0fc19dc6, R13
- MOVL R10, CX
- RORL $0x06, AX
- MOVL R10, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R10, CX
- RORL $0x19, DX
- ANDL R11, CX
- XORL AX, DX
- MOVL R10, AX
- NOTL AX
- ADDL DX, R13
- ANDL R12, AX
- XORL CX, AX
- ADDL R13, AX
- MOVL R14, DI
- MOVL R8, BX
- RORL $0x02, DI
- MOVL R14, DX
- ANDL R15, BX
- RORL $0x0d, DX
- MOVL R14, CX
- ANDL R8, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R14, DX
- MOVL R15, CX
- RORL $0x16, DX
- ANDL R14, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R13
- ADDL AX, R9
- ADDL AX, R13
- MOVL 68(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 16(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 48(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 12(BP), BX
- ADDL BX, AX
- MOVL AX, 76(BP)
- ADDL AX, R12
- MOVL R9, AX
- ADDL $0x240ca1cc, R12
- MOVL R9, CX
- RORL $0x06, AX
- MOVL R9, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R9, CX
- RORL $0x19, DX
- ANDL R10, CX
- XORL AX, DX
- MOVL R9, AX
- NOTL AX
- ADDL DX, R12
- ANDL R11, AX
- XORL CX, AX
- ADDL R12, AX
- MOVL R13, DI
- MOVL R15, BX
- RORL $0x02, DI
- MOVL R13, DX
- ANDL R14, BX
- RORL $0x0d, DX
- MOVL R13, CX
- ANDL R15, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R13, DX
- MOVL R14, CX
- RORL $0x16, DX
- ANDL R13, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R12
- ADDL AX, R8
- ADDL AX, R12
- MOVL 72(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 20(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 52(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 16(BP), BX
- ADDL BX, AX
- MOVL AX, 80(BP)
- ADDL AX, R11
- MOVL R8, AX
- ADDL $0x2de92c6f, R11
- MOVL R8, CX
- RORL $0x06, AX
- MOVL R8, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R8, CX
- RORL $0x19, DX
- ANDL R9, CX
- XORL AX, DX
- MOVL R8, AX
- NOTL AX
- ADDL DX, R11
- ANDL R10, AX
- XORL CX, AX
- ADDL R11, AX
- MOVL R12, DI
- MOVL R14, BX
- RORL $0x02, DI
- MOVL R12, DX
- ANDL R13, BX
- RORL $0x0d, DX
- MOVL R12, CX
- ANDL R14, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R12, DX
- MOVL R13, CX
- RORL $0x16, DX
- ANDL R12, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R11
- ADDL AX, R15
- ADDL AX, R11
- MOVL 76(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 24(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 56(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 20(BP), BX
- ADDL BX, AX
- MOVL AX, 84(BP)
- ADDL AX, R10
- MOVL R15, AX
- ADDL $0x4a7484aa, R10
- MOVL R15, CX
- RORL $0x06, AX
- MOVL R15, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R15, CX
- RORL $0x19, DX
- ANDL R8, CX
- XORL AX, DX
- MOVL R15, AX
- NOTL AX
- ADDL DX, R10
- ANDL R9, AX
- XORL CX, AX
- ADDL R10, AX
- MOVL R11, DI
- MOVL R13, BX
- RORL $0x02, DI
- MOVL R11, DX
- ANDL R12, BX
- RORL $0x0d, DX
- MOVL R11, CX
- ANDL R13, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R11, DX
- MOVL R12, CX
- RORL $0x16, DX
- ANDL R11, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R10
- ADDL AX, R14
- ADDL AX, R10
- MOVL 80(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 28(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 60(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 24(BP), BX
- ADDL BX, AX
- MOVL AX, 88(BP)
- ADDL AX, R9
- MOVL R14, AX
- ADDL $0x5cb0a9dc, R9
- MOVL R14, CX
- RORL $0x06, AX
- MOVL R14, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R14, CX
- RORL $0x19, DX
- ANDL R15, CX
- XORL AX, DX
- MOVL R14, AX
- NOTL AX
- ADDL DX, R9
- ANDL R8, AX
- XORL CX, AX
- ADDL R9, AX
- MOVL R10, DI
- MOVL R12, BX
- RORL $0x02, DI
- MOVL R10, DX
- ANDL R11, BX
- RORL $0x0d, DX
- MOVL R10, CX
- ANDL R12, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R10, DX
- MOVL R11, CX
- RORL $0x16, DX
- ANDL R10, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R9
- ADDL AX, R13
- ADDL AX, R9
- MOVL 84(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 32(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 64(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 28(BP), BX
- ADDL BX, AX
- MOVL AX, 92(BP)
- ADDL AX, R8
- MOVL R13, AX
- ADDL $0x76f988da, R8
- MOVL R13, CX
- RORL $0x06, AX
- MOVL R13, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R13, CX
- RORL $0x19, DX
- ANDL R14, CX
- XORL AX, DX
- MOVL R13, AX
- NOTL AX
- ADDL DX, R8
- ANDL R15, AX
- XORL CX, AX
- ADDL R8, AX
- MOVL R9, DI
- MOVL R11, BX
- RORL $0x02, DI
- MOVL R9, DX
- ANDL R10, BX
- RORL $0x0d, DX
- MOVL R9, CX
- ANDL R11, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R9, DX
- MOVL R10, CX
- RORL $0x16, DX
- ANDL R9, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R8
- ADDL AX, R12
- ADDL AX, R8
- MOVL 88(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 36(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 68(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 32(BP), BX
- ADDL BX, AX
- MOVL AX, 96(BP)
- ADDL AX, R15
- MOVL R12, AX
- ADDL $0x983e5152, R15
- MOVL R12, CX
- RORL $0x06, AX
- MOVL R12, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R12, CX
- RORL $0x19, DX
- ANDL R13, CX
- XORL AX, DX
- MOVL R12, AX
- NOTL AX
- ADDL DX, R15
- ANDL R14, AX
- XORL CX, AX
- ADDL R15, AX
- MOVL R8, DI
- MOVL R10, BX
- RORL $0x02, DI
- MOVL R8, DX
- ANDL R9, BX
- RORL $0x0d, DX
- MOVL R8, CX
- ANDL R10, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R8, DX
- MOVL R9, CX
- RORL $0x16, DX
- ANDL R8, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R15
- ADDL AX, R11
- ADDL AX, R15
- MOVL 92(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 40(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 72(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 36(BP), BX
- ADDL BX, AX
- MOVL AX, 100(BP)
- ADDL AX, R14
- MOVL R11, AX
- ADDL $0xa831c66d, R14
- MOVL R11, CX
- RORL $0x06, AX
- MOVL R11, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R11, CX
- RORL $0x19, DX
- ANDL R12, CX
- XORL AX, DX
- MOVL R11, AX
- NOTL AX
- ADDL DX, R14
- ANDL R13, AX
- XORL CX, AX
- ADDL R14, AX
- MOVL R15, DI
- MOVL R9, BX
- RORL $0x02, DI
- MOVL R15, DX
- ANDL R8, BX
- RORL $0x0d, DX
- MOVL R15, CX
- ANDL R9, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R15, DX
- MOVL R8, CX
- RORL $0x16, DX
- ANDL R15, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R14
- ADDL AX, R10
- ADDL AX, R14
- MOVL 96(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 44(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 76(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 40(BP), BX
- ADDL BX, AX
- MOVL AX, 104(BP)
- ADDL AX, R13
- MOVL R10, AX
- ADDL $0xb00327c8, R13
- MOVL R10, CX
- RORL $0x06, AX
- MOVL R10, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R10, CX
- RORL $0x19, DX
- ANDL R11, CX
- XORL AX, DX
- MOVL R10, AX
- NOTL AX
- ADDL DX, R13
- ANDL R12, AX
- XORL CX, AX
- ADDL R13, AX
- MOVL R14, DI
- MOVL R8, BX
- RORL $0x02, DI
- MOVL R14, DX
- ANDL R15, BX
- RORL $0x0d, DX
- MOVL R14, CX
- ANDL R8, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R14, DX
- MOVL R15, CX
- RORL $0x16, DX
- ANDL R14, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R13
- ADDL AX, R9
- ADDL AX, R13
- MOVL 100(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 48(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 80(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 44(BP), BX
- ADDL BX, AX
- MOVL AX, 108(BP)
- ADDL AX, R12
- MOVL R9, AX
- ADDL $0xbf597fc7, R12
- MOVL R9, CX
- RORL $0x06, AX
- MOVL R9, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R9, CX
- RORL $0x19, DX
- ANDL R10, CX
- XORL AX, DX
- MOVL R9, AX
- NOTL AX
- ADDL DX, R12
- ANDL R11, AX
- XORL CX, AX
- ADDL R12, AX
- MOVL R13, DI
- MOVL R15, BX
- RORL $0x02, DI
- MOVL R13, DX
- ANDL R14, BX
- RORL $0x0d, DX
- MOVL R13, CX
- ANDL R15, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R13, DX
- MOVL R14, CX
- RORL $0x16, DX
- ANDL R13, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R12
- ADDL AX, R8
- ADDL AX, R12
- MOVL 104(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 52(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 84(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 48(BP), BX
- ADDL BX, AX
- MOVL AX, 112(BP)
- ADDL AX, R11
- MOVL R8, AX
- ADDL $0xc6e00bf3, R11
- MOVL R8, CX
- RORL $0x06, AX
- MOVL R8, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R8, CX
- RORL $0x19, DX
- ANDL R9, CX
- XORL AX, DX
- MOVL R8, AX
- NOTL AX
- ADDL DX, R11
- ANDL R10, AX
- XORL CX, AX
- ADDL R11, AX
- MOVL R12, DI
- MOVL R14, BX
- RORL $0x02, DI
- MOVL R12, DX
- ANDL R13, BX
- RORL $0x0d, DX
- MOVL R12, CX
- ANDL R14, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R12, DX
- MOVL R13, CX
- RORL $0x16, DX
- ANDL R12, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R11
- ADDL AX, R15
- ADDL AX, R11
- MOVL 108(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 56(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 88(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 52(BP), BX
- ADDL BX, AX
- MOVL AX, 116(BP)
- ADDL AX, R10
- MOVL R15, AX
- ADDL $0xd5a79147, R10
- MOVL R15, CX
- RORL $0x06, AX
- MOVL R15, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R15, CX
- RORL $0x19, DX
- ANDL R8, CX
- XORL AX, DX
- MOVL R15, AX
- NOTL AX
- ADDL DX, R10
- ANDL R9, AX
- XORL CX, AX
- ADDL R10, AX
- MOVL R11, DI
- MOVL R13, BX
- RORL $0x02, DI
- MOVL R11, DX
- ANDL R12, BX
- RORL $0x0d, DX
- MOVL R11, CX
- ANDL R13, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R11, DX
- MOVL R12, CX
- RORL $0x16, DX
- ANDL R11, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R10
- ADDL AX, R14
- ADDL AX, R10
- MOVL 112(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 60(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 92(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 56(BP), BX
- ADDL BX, AX
- MOVL AX, 120(BP)
- ADDL AX, R9
- MOVL R14, AX
- ADDL $0x06ca6351, R9
- MOVL R14, CX
- RORL $0x06, AX
- MOVL R14, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R14, CX
- RORL $0x19, DX
- ANDL R15, CX
- XORL AX, DX
- MOVL R14, AX
- NOTL AX
- ADDL DX, R9
- ANDL R8, AX
- XORL CX, AX
- ADDL R9, AX
- MOVL R10, DI
- MOVL R12, BX
- RORL $0x02, DI
- MOVL R10, DX
- ANDL R11, BX
- RORL $0x0d, DX
- MOVL R10, CX
- ANDL R12, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R10, DX
- MOVL R11, CX
- RORL $0x16, DX
- ANDL R10, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R9
- ADDL AX, R13
- ADDL AX, R9
- MOVL 116(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 64(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 96(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 60(BP), BX
- ADDL BX, AX
- MOVL AX, 124(BP)
- ADDL AX, R8
- MOVL R13, AX
- ADDL $0x14292967, R8
- MOVL R13, CX
- RORL $0x06, AX
- MOVL R13, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R13, CX
- RORL $0x19, DX
- ANDL R14, CX
- XORL AX, DX
- MOVL R13, AX
- NOTL AX
- ADDL DX, R8
- ANDL R15, AX
- XORL CX, AX
- ADDL R8, AX
- MOVL R9, DI
- MOVL R11, BX
- RORL $0x02, DI
- MOVL R9, DX
- ANDL R10, BX
- RORL $0x0d, DX
- MOVL R9, CX
- ANDL R11, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R9, DX
- MOVL R10, CX
- RORL $0x16, DX
- ANDL R9, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R8
- ADDL AX, R12
- ADDL AX, R8
- MOVL 120(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 68(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 100(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 64(BP), BX
- ADDL BX, AX
- MOVL AX, 128(BP)
- ADDL AX, R15
- MOVL R12, AX
- ADDL $0x27b70a85, R15
- MOVL R12, CX
- RORL $0x06, AX
- MOVL R12, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R12, CX
- RORL $0x19, DX
- ANDL R13, CX
- XORL AX, DX
- MOVL R12, AX
- NOTL AX
- ADDL DX, R15
- ANDL R14, AX
- XORL CX, AX
- ADDL R15, AX
- MOVL R8, DI
- MOVL R10, BX
- RORL $0x02, DI
- MOVL R8, DX
- ANDL R9, BX
- RORL $0x0d, DX
- MOVL R8, CX
- ANDL R10, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R8, DX
- MOVL R9, CX
- RORL $0x16, DX
- ANDL R8, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R15
- ADDL AX, R11
- ADDL AX, R15
- MOVL 124(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 72(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 104(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 68(BP), BX
- ADDL BX, AX
- MOVL AX, 132(BP)
- ADDL AX, R14
- MOVL R11, AX
- ADDL $0x2e1b2138, R14
- MOVL R11, CX
- RORL $0x06, AX
- MOVL R11, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R11, CX
- RORL $0x19, DX
- ANDL R12, CX
- XORL AX, DX
- MOVL R11, AX
- NOTL AX
- ADDL DX, R14
- ANDL R13, AX
- XORL CX, AX
- ADDL R14, AX
- MOVL R15, DI
- MOVL R9, BX
- RORL $0x02, DI
- MOVL R15, DX
- ANDL R8, BX
- RORL $0x0d, DX
- MOVL R15, CX
- ANDL R9, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R15, DX
- MOVL R8, CX
- RORL $0x16, DX
- ANDL R15, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R14
- ADDL AX, R10
- ADDL AX, R14
- MOVL 128(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 76(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 108(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 72(BP), BX
- ADDL BX, AX
- MOVL AX, 136(BP)
- ADDL AX, R13
- MOVL R10, AX
- ADDL $0x4d2c6dfc, R13
- MOVL R10, CX
- RORL $0x06, AX
- MOVL R10, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R10, CX
- RORL $0x19, DX
- ANDL R11, CX
- XORL AX, DX
- MOVL R10, AX
- NOTL AX
- ADDL DX, R13
- ANDL R12, AX
- XORL CX, AX
- ADDL R13, AX
- MOVL R14, DI
- MOVL R8, BX
- RORL $0x02, DI
- MOVL R14, DX
- ANDL R15, BX
- RORL $0x0d, DX
- MOVL R14, CX
- ANDL R8, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R14, DX
- MOVL R15, CX
- RORL $0x16, DX
- ANDL R14, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R13
- ADDL AX, R9
- ADDL AX, R13
- MOVL 132(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 80(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 112(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 76(BP), BX
- ADDL BX, AX
- MOVL AX, 140(BP)
- ADDL AX, R12
- MOVL R9, AX
- ADDL $0x53380d13, R12
- MOVL R9, CX
- RORL $0x06, AX
- MOVL R9, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R9, CX
- RORL $0x19, DX
- ANDL R10, CX
- XORL AX, DX
- MOVL R9, AX
- NOTL AX
- ADDL DX, R12
- ANDL R11, AX
- XORL CX, AX
- ADDL R12, AX
- MOVL R13, DI
- MOVL R15, BX
- RORL $0x02, DI
- MOVL R13, DX
- ANDL R14, BX
- RORL $0x0d, DX
- MOVL R13, CX
- ANDL R15, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R13, DX
- MOVL R14, CX
- RORL $0x16, DX
- ANDL R13, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R12
- ADDL AX, R8
- ADDL AX, R12
- MOVL 136(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 84(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 116(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 80(BP), BX
- ADDL BX, AX
- MOVL AX, 144(BP)
- ADDL AX, R11
- MOVL R8, AX
- ADDL $0x650a7354, R11
- MOVL R8, CX
- RORL $0x06, AX
- MOVL R8, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R8, CX
- RORL $0x19, DX
- ANDL R9, CX
- XORL AX, DX
- MOVL R8, AX
- NOTL AX
- ADDL DX, R11
- ANDL R10, AX
- XORL CX, AX
- ADDL R11, AX
- MOVL R12, DI
- MOVL R14, BX
- RORL $0x02, DI
- MOVL R12, DX
- ANDL R13, BX
- RORL $0x0d, DX
- MOVL R12, CX
- ANDL R14, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R12, DX
- MOVL R13, CX
- RORL $0x16, DX
- ANDL R12, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R11
- ADDL AX, R15
- ADDL AX, R11
- MOVL 140(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 88(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 120(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 84(BP), BX
- ADDL BX, AX
- MOVL AX, 148(BP)
- ADDL AX, R10
- MOVL R15, AX
- ADDL $0x766a0abb, R10
- MOVL R15, CX
- RORL $0x06, AX
- MOVL R15, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R15, CX
- RORL $0x19, DX
- ANDL R8, CX
- XORL AX, DX
- MOVL R15, AX
- NOTL AX
- ADDL DX, R10
- ANDL R9, AX
- XORL CX, AX
- ADDL R10, AX
- MOVL R11, DI
- MOVL R13, BX
- RORL $0x02, DI
- MOVL R11, DX
- ANDL R12, BX
- RORL $0x0d, DX
- MOVL R11, CX
- ANDL R13, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R11, DX
- MOVL R12, CX
- RORL $0x16, DX
- ANDL R11, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R10
- ADDL AX, R14
- ADDL AX, R10
- MOVL 144(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 92(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 124(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 88(BP), BX
- ADDL BX, AX
- MOVL AX, 152(BP)
- ADDL AX, R9
- MOVL R14, AX
- ADDL $0x81c2c92e, R9
- MOVL R14, CX
- RORL $0x06, AX
- MOVL R14, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R14, CX
- RORL $0x19, DX
- ANDL R15, CX
- XORL AX, DX
- MOVL R14, AX
- NOTL AX
- ADDL DX, R9
- ANDL R8, AX
- XORL CX, AX
- ADDL R9, AX
- MOVL R10, DI
- MOVL R12, BX
- RORL $0x02, DI
- MOVL R10, DX
- ANDL R11, BX
- RORL $0x0d, DX
- MOVL R10, CX
- ANDL R12, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R10, DX
- MOVL R11, CX
- RORL $0x16, DX
- ANDL R10, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R9
- ADDL AX, R13
- ADDL AX, R9
- MOVL 148(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 96(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 128(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 92(BP), BX
- ADDL BX, AX
- MOVL AX, 156(BP)
- ADDL AX, R8
- MOVL R13, AX
- ADDL $0x92722c85, R8
- MOVL R13, CX
- RORL $0x06, AX
- MOVL R13, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R13, CX
- RORL $0x19, DX
- ANDL R14, CX
- XORL AX, DX
- MOVL R13, AX
- NOTL AX
- ADDL DX, R8
- ANDL R15, AX
- XORL CX, AX
- ADDL R8, AX
- MOVL R9, DI
- MOVL R11, BX
- RORL $0x02, DI
- MOVL R9, DX
- ANDL R10, BX
- RORL $0x0d, DX
- MOVL R9, CX
- ANDL R11, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R9, DX
- MOVL R10, CX
- RORL $0x16, DX
- ANDL R9, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R8
- ADDL AX, R12
- ADDL AX, R8
- MOVL 152(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 100(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 132(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 96(BP), BX
- ADDL BX, AX
- MOVL AX, 160(BP)
- ADDL AX, R15
- MOVL R12, AX
- ADDL $0xa2bfe8a1, R15
- MOVL R12, CX
- RORL $0x06, AX
- MOVL R12, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R12, CX
- RORL $0x19, DX
- ANDL R13, CX
- XORL AX, DX
- MOVL R12, AX
- NOTL AX
- ADDL DX, R15
- ANDL R14, AX
- XORL CX, AX
- ADDL R15, AX
- MOVL R8, DI
- MOVL R10, BX
- RORL $0x02, DI
- MOVL R8, DX
- ANDL R9, BX
- RORL $0x0d, DX
- MOVL R8, CX
- ANDL R10, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R8, DX
- MOVL R9, CX
- RORL $0x16, DX
- ANDL R8, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R15
- ADDL AX, R11
- ADDL AX, R15
- MOVL 156(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 104(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 136(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 100(BP), BX
- ADDL BX, AX
- MOVL AX, 164(BP)
- ADDL AX, R14
- MOVL R11, AX
- ADDL $0xa81a664b, R14
- MOVL R11, CX
- RORL $0x06, AX
- MOVL R11, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R11, CX
- RORL $0x19, DX
- ANDL R12, CX
- XORL AX, DX
- MOVL R11, AX
- NOTL AX
- ADDL DX, R14
- ANDL R13, AX
- XORL CX, AX
- ADDL R14, AX
- MOVL R15, DI
- MOVL R9, BX
- RORL $0x02, DI
- MOVL R15, DX
- ANDL R8, BX
- RORL $0x0d, DX
- MOVL R15, CX
- ANDL R9, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R15, DX
- MOVL R8, CX
- RORL $0x16, DX
- ANDL R15, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R14
- ADDL AX, R10
- ADDL AX, R14
- MOVL 160(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 108(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 140(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 104(BP), BX
- ADDL BX, AX
- MOVL AX, 168(BP)
- ADDL AX, R13
- MOVL R10, AX
- ADDL $0xc24b8b70, R13
- MOVL R10, CX
- RORL $0x06, AX
- MOVL R10, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R10, CX
- RORL $0x19, DX
- ANDL R11, CX
- XORL AX, DX
- MOVL R10, AX
- NOTL AX
- ADDL DX, R13
- ANDL R12, AX
- XORL CX, AX
- ADDL R13, AX
- MOVL R14, DI
- MOVL R8, BX
- RORL $0x02, DI
- MOVL R14, DX
- ANDL R15, BX
- RORL $0x0d, DX
- MOVL R14, CX
- ANDL R8, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R14, DX
- MOVL R15, CX
- RORL $0x16, DX
- ANDL R14, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R13
- ADDL AX, R9
- ADDL AX, R13
- MOVL 164(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 112(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 144(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 108(BP), BX
- ADDL BX, AX
- MOVL AX, 172(BP)
- ADDL AX, R12
- MOVL R9, AX
- ADDL $0xc76c51a3, R12
- MOVL R9, CX
- RORL $0x06, AX
- MOVL R9, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R9, CX
- RORL $0x19, DX
- ANDL R10, CX
- XORL AX, DX
- MOVL R9, AX
- NOTL AX
- ADDL DX, R12
- ANDL R11, AX
- XORL CX, AX
- ADDL R12, AX
- MOVL R13, DI
- MOVL R15, BX
- RORL $0x02, DI
- MOVL R13, DX
- ANDL R14, BX
- RORL $0x0d, DX
- MOVL R13, CX
- ANDL R15, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R13, DX
- MOVL R14, CX
- RORL $0x16, DX
- ANDL R13, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R12
- ADDL AX, R8
- ADDL AX, R12
- MOVL 168(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 116(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 148(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 112(BP), BX
- ADDL BX, AX
- MOVL AX, 176(BP)
- ADDL AX, R11
- MOVL R8, AX
- ADDL $0xd192e819, R11
- MOVL R8, CX
- RORL $0x06, AX
- MOVL R8, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R8, CX
- RORL $0x19, DX
- ANDL R9, CX
- XORL AX, DX
- MOVL R8, AX
- NOTL AX
- ADDL DX, R11
- ANDL R10, AX
- XORL CX, AX
- ADDL R11, AX
- MOVL R12, DI
- MOVL R14, BX
- RORL $0x02, DI
- MOVL R12, DX
- ANDL R13, BX
- RORL $0x0d, DX
- MOVL R12, CX
- ANDL R14, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R12, DX
- MOVL R13, CX
- RORL $0x16, DX
- ANDL R12, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R11
- ADDL AX, R15
- ADDL AX, R11
- MOVL 172(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 120(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 152(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 116(BP), BX
- ADDL BX, AX
- MOVL AX, 180(BP)
- ADDL AX, R10
- MOVL R15, AX
- ADDL $0xd6990624, R10
- MOVL R15, CX
- RORL $0x06, AX
- MOVL R15, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R15, CX
- RORL $0x19, DX
- ANDL R8, CX
- XORL AX, DX
- MOVL R15, AX
- NOTL AX
- ADDL DX, R10
- ANDL R9, AX
- XORL CX, AX
- ADDL R10, AX
- MOVL R11, DI
- MOVL R13, BX
- RORL $0x02, DI
- MOVL R11, DX
- ANDL R12, BX
- RORL $0x0d, DX
- MOVL R11, CX
- ANDL R13, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R11, DX
- MOVL R12, CX
- RORL $0x16, DX
- ANDL R11, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R10
- ADDL AX, R14
- ADDL AX, R10
- MOVL 176(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 124(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 156(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 120(BP), BX
- ADDL BX, AX
- MOVL AX, 184(BP)
- ADDL AX, R9
- MOVL R14, AX
- ADDL $0xf40e3585, R9
- MOVL R14, CX
- RORL $0x06, AX
- MOVL R14, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R14, CX
- RORL $0x19, DX
- ANDL R15, CX
- XORL AX, DX
- MOVL R14, AX
- NOTL AX
- ADDL DX, R9
- ANDL R8, AX
- XORL CX, AX
- ADDL R9, AX
- MOVL R10, DI
- MOVL R12, BX
- RORL $0x02, DI
- MOVL R10, DX
- ANDL R11, BX
- RORL $0x0d, DX
- MOVL R10, CX
- ANDL R12, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R10, DX
- MOVL R11, CX
- RORL $0x16, DX
- ANDL R10, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R9
- ADDL AX, R13
- ADDL AX, R9
- MOVL 180(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 128(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 160(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 124(BP), BX
- ADDL BX, AX
- MOVL AX, 188(BP)
- ADDL AX, R8
- MOVL R13, AX
- ADDL $0x106aa070, R8
- MOVL R13, CX
- RORL $0x06, AX
- MOVL R13, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R13, CX
- RORL $0x19, DX
- ANDL R14, CX
- XORL AX, DX
- MOVL R13, AX
- NOTL AX
- ADDL DX, R8
- ANDL R15, AX
- XORL CX, AX
- ADDL R8, AX
- MOVL R9, DI
- MOVL R11, BX
- RORL $0x02, DI
- MOVL R9, DX
- ANDL R10, BX
- RORL $0x0d, DX
- MOVL R9, CX
- ANDL R11, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R9, DX
- MOVL R10, CX
- RORL $0x16, DX
- ANDL R9, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R8
- ADDL AX, R12
- ADDL AX, R8
- MOVL 184(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 132(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 164(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 128(BP), BX
- ADDL BX, AX
- MOVL AX, 192(BP)
- ADDL AX, R15
- MOVL R12, AX
- ADDL $0x19a4c116, R15
- MOVL R12, CX
- RORL $0x06, AX
- MOVL R12, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R12, CX
- RORL $0x19, DX
- ANDL R13, CX
- XORL AX, DX
- MOVL R12, AX
- NOTL AX
- ADDL DX, R15
- ANDL R14, AX
- XORL CX, AX
- ADDL R15, AX
- MOVL R8, DI
- MOVL R10, BX
- RORL $0x02, DI
- MOVL R8, DX
- ANDL R9, BX
- RORL $0x0d, DX
- MOVL R8, CX
- ANDL R10, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R8, DX
- MOVL R9, CX
- RORL $0x16, DX
- ANDL R8, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R15
- ADDL AX, R11
- ADDL AX, R15
- MOVL 188(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 136(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 168(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 132(BP), BX
- ADDL BX, AX
- MOVL AX, 196(BP)
- ADDL AX, R14
- MOVL R11, AX
- ADDL $0x1e376c08, R14
- MOVL R11, CX
- RORL $0x06, AX
- MOVL R11, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R11, CX
- RORL $0x19, DX
- ANDL R12, CX
- XORL AX, DX
- MOVL R11, AX
- NOTL AX
- ADDL DX, R14
- ANDL R13, AX
- XORL CX, AX
- ADDL R14, AX
- MOVL R15, DI
- MOVL R9, BX
- RORL $0x02, DI
- MOVL R15, DX
- ANDL R8, BX
- RORL $0x0d, DX
- MOVL R15, CX
- ANDL R9, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R15, DX
- MOVL R8, CX
- RORL $0x16, DX
- ANDL R15, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R14
- ADDL AX, R10
- ADDL AX, R14
- MOVL 192(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 140(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 172(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 136(BP), BX
- ADDL BX, AX
- MOVL AX, 200(BP)
- ADDL AX, R13
- MOVL R10, AX
- ADDL $0x2748774c, R13
- MOVL R10, CX
- RORL $0x06, AX
- MOVL R10, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R10, CX
- RORL $0x19, DX
- ANDL R11, CX
- XORL AX, DX
- MOVL R10, AX
- NOTL AX
- ADDL DX, R13
- ANDL R12, AX
- XORL CX, AX
- ADDL R13, AX
- MOVL R14, DI
- MOVL R8, BX
- RORL $0x02, DI
- MOVL R14, DX
- ANDL R15, BX
- RORL $0x0d, DX
- MOVL R14, CX
- ANDL R8, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R14, DX
- MOVL R15, CX
- RORL $0x16, DX
- ANDL R14, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R13
- ADDL AX, R9
- ADDL AX, R13
- MOVL 196(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 144(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 176(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 140(BP), BX
- ADDL BX, AX
- MOVL AX, 204(BP)
- ADDL AX, R12
- MOVL R9, AX
- ADDL $0x34b0bcb5, R12
- MOVL R9, CX
- RORL $0x06, AX
- MOVL R9, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R9, CX
- RORL $0x19, DX
- ANDL R10, CX
- XORL AX, DX
- MOVL R9, AX
- NOTL AX
- ADDL DX, R12
- ANDL R11, AX
- XORL CX, AX
- ADDL R12, AX
- MOVL R13, DI
- MOVL R15, BX
- RORL $0x02, DI
- MOVL R13, DX
- ANDL R14, BX
- RORL $0x0d, DX
- MOVL R13, CX
- ANDL R15, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R13, DX
- MOVL R14, CX
- RORL $0x16, DX
- ANDL R13, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R12
- ADDL AX, R8
- ADDL AX, R12
- MOVL 200(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 148(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 180(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 144(BP), BX
- ADDL BX, AX
- MOVL AX, 208(BP)
- ADDL AX, R11
- MOVL R8, AX
- ADDL $0x391c0cb3, R11
- MOVL R8, CX
- RORL $0x06, AX
- MOVL R8, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R8, CX
- RORL $0x19, DX
- ANDL R9, CX
- XORL AX, DX
- MOVL R8, AX
- NOTL AX
- ADDL DX, R11
- ANDL R10, AX
- XORL CX, AX
- ADDL R11, AX
- MOVL R12, DI
- MOVL R14, BX
- RORL $0x02, DI
- MOVL R12, DX
- ANDL R13, BX
- RORL $0x0d, DX
- MOVL R12, CX
- ANDL R14, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R12, DX
- MOVL R13, CX
- RORL $0x16, DX
- ANDL R12, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R11
- ADDL AX, R15
- ADDL AX, R11
- MOVL 204(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 152(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 184(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 148(BP), BX
- ADDL BX, AX
- MOVL AX, 212(BP)
- ADDL AX, R10
- MOVL R15, AX
- ADDL $0x4ed8aa4a, R10
- MOVL R15, CX
- RORL $0x06, AX
- MOVL R15, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R15, CX
- RORL $0x19, DX
- ANDL R8, CX
- XORL AX, DX
- MOVL R15, AX
- NOTL AX
- ADDL DX, R10
- ANDL R9, AX
- XORL CX, AX
- ADDL R10, AX
- MOVL R11, DI
- MOVL R13, BX
- RORL $0x02, DI
- MOVL R11, DX
- ANDL R12, BX
- RORL $0x0d, DX
- MOVL R11, CX
- ANDL R13, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R11, DX
- MOVL R12, CX
- RORL $0x16, DX
- ANDL R11, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R10
- ADDL AX, R14
- ADDL AX, R10
- MOVL 208(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 156(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 188(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 152(BP), BX
- ADDL BX, AX
- MOVL AX, 216(BP)
- ADDL AX, R9
- MOVL R14, AX
- ADDL $0x5b9cca4f, R9
- MOVL R14, CX
- RORL $0x06, AX
- MOVL R14, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R14, CX
- RORL $0x19, DX
- ANDL R15, CX
- XORL AX, DX
- MOVL R14, AX
- NOTL AX
- ADDL DX, R9
- ANDL R8, AX
- XORL CX, AX
- ADDL R9, AX
- MOVL R10, DI
- MOVL R12, BX
- RORL $0x02, DI
- MOVL R10, DX
- ANDL R11, BX
- RORL $0x0d, DX
- MOVL R10, CX
- ANDL R12, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R10, DX
- MOVL R11, CX
- RORL $0x16, DX
- ANDL R10, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R9
- ADDL AX, R13
- ADDL AX, R9
- MOVL 212(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 160(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 192(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 156(BP), BX
- ADDL BX, AX
- MOVL AX, 220(BP)
- ADDL AX, R8
- MOVL R13, AX
- ADDL $0x682e6ff3, R8
- MOVL R13, CX
- RORL $0x06, AX
- MOVL R13, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R13, CX
- RORL $0x19, DX
- ANDL R14, CX
- XORL AX, DX
- MOVL R13, AX
- NOTL AX
- ADDL DX, R8
- ANDL R15, AX
- XORL CX, AX
- ADDL R8, AX
- MOVL R9, DI
- MOVL R11, BX
- RORL $0x02, DI
- MOVL R9, DX
- ANDL R10, BX
- RORL $0x0d, DX
- MOVL R9, CX
- ANDL R11, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R9, DX
- MOVL R10, CX
- RORL $0x16, DX
- ANDL R9, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R8
- ADDL AX, R12
- ADDL AX, R8
- MOVL 216(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 164(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 196(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 160(BP), BX
- ADDL BX, AX
- MOVL AX, 224(BP)
- ADDL AX, R15
- MOVL R12, AX
- ADDL $0x748f82ee, R15
- MOVL R12, CX
- RORL $0x06, AX
- MOVL R12, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R12, CX
- RORL $0x19, DX
- ANDL R13, CX
- XORL AX, DX
- MOVL R12, AX
- NOTL AX
- ADDL DX, R15
- ANDL R14, AX
- XORL CX, AX
- ADDL R15, AX
- MOVL R8, DI
- MOVL R10, BX
- RORL $0x02, DI
- MOVL R8, DX
- ANDL R9, BX
- RORL $0x0d, DX
- MOVL R8, CX
- ANDL R10, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R8, DX
- MOVL R9, CX
- RORL $0x16, DX
- ANDL R8, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R15
- ADDL AX, R11
- ADDL AX, R15
- MOVL 220(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 168(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 200(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 164(BP), BX
- ADDL BX, AX
- MOVL AX, 228(BP)
- ADDL AX, R14
- MOVL R11, AX
- ADDL $0x78a5636f, R14
- MOVL R11, CX
- RORL $0x06, AX
- MOVL R11, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R11, CX
- RORL $0x19, DX
- ANDL R12, CX
- XORL AX, DX
- MOVL R11, AX
- NOTL AX
- ADDL DX, R14
- ANDL R13, AX
- XORL CX, AX
- ADDL R14, AX
- MOVL R15, DI
- MOVL R9, BX
- RORL $0x02, DI
- MOVL R15, DX
- ANDL R8, BX
- RORL $0x0d, DX
- MOVL R15, CX
- ANDL R9, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R15, DX
- MOVL R8, CX
- RORL $0x16, DX
- ANDL R15, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R14
- ADDL AX, R10
- ADDL AX, R14
- MOVL 224(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 172(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 204(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 168(BP), BX
- ADDL BX, AX
- MOVL AX, 232(BP)
- ADDL AX, R13
- MOVL R10, AX
- ADDL $0x84c87814, R13
- MOVL R10, CX
- RORL $0x06, AX
- MOVL R10, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R10, CX
- RORL $0x19, DX
- ANDL R11, CX
- XORL AX, DX
- MOVL R10, AX
- NOTL AX
- ADDL DX, R13
- ANDL R12, AX
- XORL CX, AX
- ADDL R13, AX
- MOVL R14, DI
- MOVL R8, BX
- RORL $0x02, DI
- MOVL R14, DX
- ANDL R15, BX
- RORL $0x0d, DX
- MOVL R14, CX
- ANDL R8, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R14, DX
- MOVL R15, CX
- RORL $0x16, DX
- ANDL R14, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R13
- ADDL AX, R9
- ADDL AX, R13
- MOVL 228(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 176(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 208(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 172(BP), BX
- ADDL BX, AX
- MOVL AX, 236(BP)
- ADDL AX, R12
- MOVL R9, AX
- ADDL $0x8cc70208, R12
- MOVL R9, CX
- RORL $0x06, AX
- MOVL R9, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R9, CX
- RORL $0x19, DX
- ANDL R10, CX
- XORL AX, DX
- MOVL R9, AX
- NOTL AX
- ADDL DX, R12
- ANDL R11, AX
- XORL CX, AX
- ADDL R12, AX
- MOVL R13, DI
- MOVL R15, BX
- RORL $0x02, DI
- MOVL R13, DX
- ANDL R14, BX
- RORL $0x0d, DX
- MOVL R13, CX
- ANDL R15, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R13, DX
- MOVL R14, CX
- RORL $0x16, DX
- ANDL R13, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R12
- ADDL AX, R8
- ADDL AX, R12
- MOVL 232(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 180(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 212(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 176(BP), BX
- ADDL BX, AX
- MOVL AX, 240(BP)
- ADDL AX, R11
- MOVL R8, AX
- ADDL $0x90befffa, R11
- MOVL R8, CX
- RORL $0x06, AX
- MOVL R8, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R8, CX
- RORL $0x19, DX
- ANDL R9, CX
- XORL AX, DX
- MOVL R8, AX
- NOTL AX
- ADDL DX, R11
- ANDL R10, AX
- XORL CX, AX
- ADDL R11, AX
- MOVL R12, DI
- MOVL R14, BX
- RORL $0x02, DI
- MOVL R12, DX
- ANDL R13, BX
- RORL $0x0d, DX
- MOVL R12, CX
- ANDL R14, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R12, DX
- MOVL R13, CX
- RORL $0x16, DX
- ANDL R12, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R11
- ADDL AX, R15
- ADDL AX, R11
- MOVL 236(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 184(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 216(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 180(BP), BX
- ADDL BX, AX
- MOVL AX, 244(BP)
- ADDL AX, R10
- MOVL R15, AX
- ADDL $0xa4506ceb, R10
- MOVL R15, CX
- RORL $0x06, AX
- MOVL R15, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R15, CX
- RORL $0x19, DX
- ANDL R8, CX
- XORL AX, DX
- MOVL R15, AX
- NOTL AX
- ADDL DX, R10
- ANDL R9, AX
- XORL CX, AX
- ADDL R10, AX
- MOVL R11, DI
- MOVL R13, BX
- RORL $0x02, DI
- MOVL R11, DX
- ANDL R12, BX
- RORL $0x0d, DX
- MOVL R11, CX
- ANDL R13, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R11, DX
- MOVL R12, CX
- RORL $0x16, DX
- ANDL R11, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R10
- ADDL AX, R14
- ADDL AX, R10
- MOVL 240(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 188(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 220(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 184(BP), BX
- ADDL BX, AX
- MOVL AX, 248(BP)
- ADDL AX, R9
- MOVL R14, AX
- ADDL $0xbef9a3f7, R9
- MOVL R14, CX
- RORL $0x06, AX
- MOVL R14, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R14, CX
- RORL $0x19, DX
- ANDL R15, CX
- XORL AX, DX
- MOVL R14, AX
- NOTL AX
- ADDL DX, R9
- ANDL R8, AX
- XORL CX, AX
- ADDL R9, AX
- MOVL R10, DI
- MOVL R12, BX
- RORL $0x02, DI
- MOVL R10, DX
- ANDL R11, BX
- RORL $0x0d, DX
- MOVL R10, CX
- ANDL R12, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R10, DX
- MOVL R11, CX
- RORL $0x16, DX
- ANDL R10, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R9
- ADDL AX, R13
- ADDL AX, R9
- MOVL 244(BP), AX
- MOVL AX, CX
- RORL $0x11, AX
- MOVL CX, DX
- RORL $0x13, CX
- SHRL $0x0a, DX
- MOVL 192(BP), BX
- XORL CX, AX
- MOVL BX, CX
- XORL DX, AX
- RORL $0x07, BX
- MOVL CX, DX
- SHRL $0x03, DX
- RORL $0x12, CX
- ADDL 224(BP), AX
- XORL CX, BX
- XORL DX, BX
- ADDL 188(BP), BX
- ADDL BX, AX
- MOVL AX, 252(BP)
- ADDL AX, R8
- MOVL R13, AX
- ADDL $0xc67178f2, R8
- MOVL R13, CX
- RORL $0x06, AX
- MOVL R13, DX
- RORL $0x0b, CX
- XORL CX, AX
- MOVL R13, CX
- RORL $0x19, DX
- ANDL R14, CX
- XORL AX, DX
- MOVL R13, AX
- NOTL AX
- ADDL DX, R8
- ANDL R15, AX
- XORL CX, AX
- ADDL R8, AX
- MOVL R9, DI
- MOVL R11, BX
- RORL $0x02, DI
- MOVL R9, DX
- ANDL R10, BX
- RORL $0x0d, DX
- MOVL R9, CX
- ANDL R11, CX
- XORL DX, DI
- XORL CX, BX
- MOVL R9, DX
- MOVL R10, CX
- RORL $0x16, DX
- ANDL R9, CX
- XORL CX, BX
- XORL DX, DI
- ADDL DI, BX
- MOVL BX, R8
- ADDL AX, R12
- ADDL AX, R8
- MOVQ dig+0(FP), BP
- ADDL (BP), R8
- MOVL R8, (BP)
- ADDL 4(BP), R9
- MOVL R9, 4(BP)
- ADDL 8(BP), R10
- MOVL R10, 8(BP)
- ADDL 12(BP), R11
- MOVL R11, 12(BP)
- ADDL 16(BP), R12
- MOVL R12, 16(BP)
- ADDL 20(BP), R13
- MOVL R13, 20(BP)
- ADDL 24(BP), R14
- MOVL R14, 24(BP)
- ADDL 28(BP), R15
- MOVL R15, 28(BP)
- ADDQ $0x40, SI
- CMPQ SI, 256(SP)
- JB loop
-
-end:
- RET
-
// func blockAVX2(dig *Digest, p []byte)
// Requires: AVX, AVX2, BMI2
TEXT ·blockAVX2(SB), $536-32
Package("crypto/internal/fips140/sha512")
ConstraintExpr("!purego")
- blockAMD64()
blockAVX2()
Generate()
}
-// Wt = Mt; for 0 <= t <= 15
-//
-// Line 50
-func MSGSCHEDULE0(index int) {
- MOVQ(Mem{Base: SI}.Offset(index*8), RAX)
- BSWAPQ(RAX)
- MOVQ(RAX, Mem{Base: BP}.Offset(index*8))
-}
-
-// Wt = SIGMA1(Wt-2) + Wt-7 + SIGMA0(Wt-15) + Wt-16; for 16 <= t <= 79
-//
-// SIGMA0(x) = ROTR(1,x) XOR ROTR(8,x) XOR SHR(7,x)
-// SIGMA1(x) = ROTR(19,x) XOR ROTR(61,x) XOR SHR(6,x)
-//
-// Line 58
-func MSGSCHEDULE1(index int) {
- MOVQ(Mem{Base: BP}.Offset((index-2)*8), RAX)
- MOVQ(RAX, RCX)
- RORQ(Imm(19), RAX)
- MOVQ(RCX, RDX)
- RORQ(Imm(61), RCX)
- SHRQ(Imm(6), RDX)
- MOVQ(Mem{Base: BP}.Offset((index-15)*8), RBX)
- XORQ(RCX, RAX)
- MOVQ(RBX, RCX)
- XORQ(RDX, RAX)
- RORQ(Imm(1), RBX)
- MOVQ(RCX, RDX)
- SHRQ(Imm(7), RDX)
- RORQ(Imm(8), RCX)
- ADDQ(Mem{Base: BP}.Offset((index-7)*8), RAX)
- XORQ(RCX, RBX)
- XORQ(RDX, RBX)
- ADDQ(Mem{Base: BP}.Offset((index-16)*8), RBX)
- ADDQ(RBX, RAX)
- MOVQ(RAX, Mem{Base: BP}.Offset((index)*8))
-}
-
-// Calculate T1 in AX - uses AX, CX and DX registers.
-// h is also used as an accumulator. Wt is passed in AX.
-//
-// T1 = h + BIGSIGMA1(e) + Ch(e, f, g) + Kt + Wt
-// BIGSIGMA1(x) = ROTR(14,x) XOR ROTR(18,x) XOR ROTR(41,x)
-// Ch(x, y, z) = (x AND y) XOR (NOT x AND z)
-//
-// Line 85
-func SHA512T1(konst uint64, e, f, g, h GPPhysical) {
- MOVQ(U64(konst), RDX)
- ADDQ(RAX, h)
- MOVQ(e, RAX)
- ADDQ(RDX, h)
- MOVQ(e, RCX)
- RORQ(U8(14), RAX)
- MOVQ(e, RDX)
- RORQ(U8(18), RCX)
- XORQ(RCX, RAX)
- MOVQ(e, RCX)
- RORQ(U8(41), RDX)
- ANDQ(f, RCX)
- XORQ(RAX, RDX)
- MOVQ(e, RAX)
- NOTQ(RAX)
- ADDQ(RDX, h)
- ANDQ(g, RAX)
- XORQ(RCX, RAX)
- ADDQ(h, RAX)
-}
-
-// Calculate T2 in BX - uses BX, CX, DX and DI registers.
-//
-// T2 = BIGSIGMA0(a) + Maj(a, b, c)
-// BIGSIGMA0(x) = ROTR(28,x) XOR ROTR(34,x) XOR ROTR(39,x)
-// Maj(x, y, z) = (x AND y) XOR (x AND z) XOR (y AND z)
-//
-// Line 110
-func SHA512T2(a, b, c GPPhysical) {
- MOVQ(a, RDI)
- MOVQ(c, RBX)
- RORQ(Imm(28), RDI)
- MOVQ(a, RDX)
- ANDQ(b, RBX)
- RORQ(Imm(34), RDX)
- MOVQ(a, RCX)
- ANDQ(c, RCX)
- XORQ(RDX, RDI)
- XORQ(RCX, RBX)
- MOVQ(a, RDX)
- MOVQ(b, RCX)
- RORQ(Imm(39), RDX)
- ANDQ(a, RCX)
- XORQ(RCX, RBX)
- XORQ(RDX, RDI)
- ADDQ(RDI, RBX)
-}
-
-// Calculate T1 and T2, then e = d + T1 and a = T1 + T2.
-// The values for e and a are stored in d and h, ready for rotation.
-//
-// Line 131
-func SHA512ROUND(index int, konst uint64, a, b, c, d, e, f, g, h GPPhysical) {
- SHA512T1(konst, e, f, g, h)
- SHA512T2(a, b, c)
- MOVQ(RBX, h)
- ADDQ(RAX, d)
- ADDQ(RAX, h)
-}
-
-// Line 169
-func SHA512ROUND0(index int, konst uint64, a, b, c, d, e, f, g, h GPPhysical) {
- MSGSCHEDULE0(index)
- SHA512ROUND(index, konst, a, b, c, d, e, f, g, h)
-}
-
-// Line 142
-func SHA512ROUND1(index int, konst uint64, a, b, c, d, e, f, g, h GPPhysical) {
- MSGSCHEDULE1(index)
- SHA512ROUND(index, konst, a, b, c, d, e, f, g, h)
-}
-
-// Line 146
-func blockAMD64() {
- Implement("blockAMD64")
- AllocLocal(648)
-
- Load(Param("p").Base(), RSI)
- Load(Param("p").Len(), RDX)
- SHRQ(Imm(7), RDX)
- SHLQ(Imm(7), RDX)
-
- LEAQ(Mem{Base: SI, Index: DX, Scale: 1}, RDI)
- MOVQ(RDI, Mem{Base: SP}.Offset(640))
- CMPQ(RSI, RDI)
- JEQ(LabelRef("end"))
-
- Load(Param("dig"), RBP)
- MOVQ(Mem{Base: BP}.Offset(0*8), R8) // a = H0
- MOVQ(Mem{Base: BP}.Offset(1*8), R9) // b = H1
- MOVQ(Mem{Base: BP}.Offset(2*8), R10) // c = H2
- MOVQ(Mem{Base: BP}.Offset(3*8), R11) // d = H3
- MOVQ(Mem{Base: BP}.Offset(4*8), R12) // e = H4
- MOVQ(Mem{Base: BP}.Offset(5*8), R13) // f = H5
- MOVQ(Mem{Base: BP}.Offset(6*8), R14) // g = H6
- MOVQ(Mem{Base: BP}.Offset(7*8), R15) // h = H7
- PSHUFFLE_BYTE_FLIP_MASK_DATA()
- loop()
- end()
-}
-
-func rotateRight(slice *[]GPPhysical) []GPPhysical {
- n := len(*slice)
- new := make([]GPPhysical, n)
- for i, reg := range *slice {
- new[(i+1)%n] = reg
- }
- return new
-}
-
-// Line 167
-func loop() {
- Label("loop")
- MOVQ(RSP, RBP) // message schedule
-
- n := len(_K)
- regs := []GPPhysical{R8, R9, R10, R11, R12, R13, R14, R15}
-
- for i := 0; i < 16; i++ {
- SHA512ROUND0(i, _K[i], regs[0], regs[1], regs[2], regs[3], regs[4], regs[5], regs[6], regs[7])
- regs = rotateRight(®s)
- }
-
- for i := 16; i < n; i++ {
- SHA512ROUND1(i, _K[i], regs[0], regs[1], regs[2], regs[3], regs[4], regs[5], regs[6], regs[7])
- regs = rotateRight(®s)
- }
-
- Load(Param("dig"), RBP)
-
- BP_Mem := Mem{Base: BP}
- ADDQ(BP_Mem.Offset(0*8), R8) // H0 = a + H0
- MOVQ(R8, BP_Mem.Offset(0*8))
- ADDQ(BP_Mem.Offset(1*8), R9) // H1 = b + H1
- MOVQ(R9, BP_Mem.Offset(1*8))
- ADDQ(BP_Mem.Offset(2*8), R10) // H2 = c + H2
- MOVQ(R10, BP_Mem.Offset(2*8))
- ADDQ(BP_Mem.Offset(3*8), R11) // H3 = d + H3
- MOVQ(R11, BP_Mem.Offset(3*8))
- ADDQ(BP_Mem.Offset(4*8), R12) // H4 = e + H4
- MOVQ(R12, BP_Mem.Offset(4*8))
- ADDQ(BP_Mem.Offset(5*8), R13) // H5 = f + H5
- MOVQ(R13, BP_Mem.Offset(5*8))
- ADDQ(BP_Mem.Offset(6*8), R14) // H6 = g + H6
- MOVQ(R14, BP_Mem.Offset(6*8))
- ADDQ(BP_Mem.Offset(7*8), R15) // H7 = h + H7
- MOVQ(R15, BP_Mem.Offset(7*8))
-
- ADDQ(Imm(128), RSI)
- CMPQ(RSI, Mem{Base: SP}.Offset(640))
- JB(LabelRef("loop"))
-}
-
-// Line 274
-func end() {
- Label("end")
- RET()
-}
-
// Version below is based on "Fast SHA512 Implementations on Intel
// Architecture Processors" White-paper
// https://www.intel.com/content/dam/www/public/us/en/documents/white-papers/fast-sha512-implementations-ia-processors-paper.pdf
//go:noescape
func blockAVX2(dig *Digest, p []byte)
-//go:noescape
-func blockAMD64(dig *Digest, p []byte)
-
func block(dig *Digest, p []byte) {
if useAVX2 {
blockAVX2(dig, p)
} else {
- blockAMD64(dig, p)
+ blockGeneric(dig, p)
}
}
#include "textflag.h"
-// func blockAMD64(dig *Digest, p []byte)
-TEXT ·blockAMD64(SB), $648-32
- MOVQ p_base+8(FP), SI
- MOVQ p_len+16(FP), DX
- SHRQ $0x07, DX
- SHLQ $0x07, DX
- LEAQ (SI)(DX*1), DI
- MOVQ DI, 640(SP)
- CMPQ SI, DI
- JEQ end
- MOVQ dig+0(FP), BP
- MOVQ (BP), R8
- MOVQ 8(BP), R9
- MOVQ 16(BP), R10
- MOVQ 24(BP), R11
- MOVQ 32(BP), R12
- MOVQ 40(BP), R13
- MOVQ 48(BP), R14
- MOVQ 56(BP), R15
-
-loop:
- MOVQ SP, BP
- MOVQ (SI), AX
- BSWAPQ AX
- MOVQ AX, (BP)
- MOVQ $0x428a2f98d728ae22, DX
- ADDQ AX, R15
- MOVQ R12, AX
- ADDQ DX, R15
- MOVQ R12, CX
- RORQ $0x0e, AX
- MOVQ R12, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R12, CX
- RORQ $0x29, DX
- ANDQ R13, CX
- XORQ AX, DX
- MOVQ R12, AX
- NOTQ AX
- ADDQ DX, R15
- ANDQ R14, AX
- XORQ CX, AX
- ADDQ R15, AX
- MOVQ R8, DI
- MOVQ R10, BX
- RORQ $0x1c, DI
- MOVQ R8, DX
- ANDQ R9, BX
- RORQ $0x22, DX
- MOVQ R8, CX
- ANDQ R10, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R8, DX
- MOVQ R9, CX
- RORQ $0x27, DX
- ANDQ R8, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R15
- ADDQ AX, R11
- ADDQ AX, R15
- MOVQ 8(SI), AX
- BSWAPQ AX
- MOVQ AX, 8(BP)
- MOVQ $0x7137449123ef65cd, DX
- ADDQ AX, R14
- MOVQ R11, AX
- ADDQ DX, R14
- MOVQ R11, CX
- RORQ $0x0e, AX
- MOVQ R11, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R11, CX
- RORQ $0x29, DX
- ANDQ R12, CX
- XORQ AX, DX
- MOVQ R11, AX
- NOTQ AX
- ADDQ DX, R14
- ANDQ R13, AX
- XORQ CX, AX
- ADDQ R14, AX
- MOVQ R15, DI
- MOVQ R9, BX
- RORQ $0x1c, DI
- MOVQ R15, DX
- ANDQ R8, BX
- RORQ $0x22, DX
- MOVQ R15, CX
- ANDQ R9, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R15, DX
- MOVQ R8, CX
- RORQ $0x27, DX
- ANDQ R15, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R14
- ADDQ AX, R10
- ADDQ AX, R14
- MOVQ 16(SI), AX
- BSWAPQ AX
- MOVQ AX, 16(BP)
- MOVQ $0xb5c0fbcfec4d3b2f, DX
- ADDQ AX, R13
- MOVQ R10, AX
- ADDQ DX, R13
- MOVQ R10, CX
- RORQ $0x0e, AX
- MOVQ R10, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R10, CX
- RORQ $0x29, DX
- ANDQ R11, CX
- XORQ AX, DX
- MOVQ R10, AX
- NOTQ AX
- ADDQ DX, R13
- ANDQ R12, AX
- XORQ CX, AX
- ADDQ R13, AX
- MOVQ R14, DI
- MOVQ R8, BX
- RORQ $0x1c, DI
- MOVQ R14, DX
- ANDQ R15, BX
- RORQ $0x22, DX
- MOVQ R14, CX
- ANDQ R8, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R14, DX
- MOVQ R15, CX
- RORQ $0x27, DX
- ANDQ R14, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R13
- ADDQ AX, R9
- ADDQ AX, R13
- MOVQ 24(SI), AX
- BSWAPQ AX
- MOVQ AX, 24(BP)
- MOVQ $0xe9b5dba58189dbbc, DX
- ADDQ AX, R12
- MOVQ R9, AX
- ADDQ DX, R12
- MOVQ R9, CX
- RORQ $0x0e, AX
- MOVQ R9, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R9, CX
- RORQ $0x29, DX
- ANDQ R10, CX
- XORQ AX, DX
- MOVQ R9, AX
- NOTQ AX
- ADDQ DX, R12
- ANDQ R11, AX
- XORQ CX, AX
- ADDQ R12, AX
- MOVQ R13, DI
- MOVQ R15, BX
- RORQ $0x1c, DI
- MOVQ R13, DX
- ANDQ R14, BX
- RORQ $0x22, DX
- MOVQ R13, CX
- ANDQ R15, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R13, DX
- MOVQ R14, CX
- RORQ $0x27, DX
- ANDQ R13, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R12
- ADDQ AX, R8
- ADDQ AX, R12
- MOVQ 32(SI), AX
- BSWAPQ AX
- MOVQ AX, 32(BP)
- MOVQ $0x3956c25bf348b538, DX
- ADDQ AX, R11
- MOVQ R8, AX
- ADDQ DX, R11
- MOVQ R8, CX
- RORQ $0x0e, AX
- MOVQ R8, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R8, CX
- RORQ $0x29, DX
- ANDQ R9, CX
- XORQ AX, DX
- MOVQ R8, AX
- NOTQ AX
- ADDQ DX, R11
- ANDQ R10, AX
- XORQ CX, AX
- ADDQ R11, AX
- MOVQ R12, DI
- MOVQ R14, BX
- RORQ $0x1c, DI
- MOVQ R12, DX
- ANDQ R13, BX
- RORQ $0x22, DX
- MOVQ R12, CX
- ANDQ R14, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R12, DX
- MOVQ R13, CX
- RORQ $0x27, DX
- ANDQ R12, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R11
- ADDQ AX, R15
- ADDQ AX, R11
- MOVQ 40(SI), AX
- BSWAPQ AX
- MOVQ AX, 40(BP)
- MOVQ $0x59f111f1b605d019, DX
- ADDQ AX, R10
- MOVQ R15, AX
- ADDQ DX, R10
- MOVQ R15, CX
- RORQ $0x0e, AX
- MOVQ R15, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R15, CX
- RORQ $0x29, DX
- ANDQ R8, CX
- XORQ AX, DX
- MOVQ R15, AX
- NOTQ AX
- ADDQ DX, R10
- ANDQ R9, AX
- XORQ CX, AX
- ADDQ R10, AX
- MOVQ R11, DI
- MOVQ R13, BX
- RORQ $0x1c, DI
- MOVQ R11, DX
- ANDQ R12, BX
- RORQ $0x22, DX
- MOVQ R11, CX
- ANDQ R13, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R11, DX
- MOVQ R12, CX
- RORQ $0x27, DX
- ANDQ R11, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R10
- ADDQ AX, R14
- ADDQ AX, R10
- MOVQ 48(SI), AX
- BSWAPQ AX
- MOVQ AX, 48(BP)
- MOVQ $0x923f82a4af194f9b, DX
- ADDQ AX, R9
- MOVQ R14, AX
- ADDQ DX, R9
- MOVQ R14, CX
- RORQ $0x0e, AX
- MOVQ R14, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R14, CX
- RORQ $0x29, DX
- ANDQ R15, CX
- XORQ AX, DX
- MOVQ R14, AX
- NOTQ AX
- ADDQ DX, R9
- ANDQ R8, AX
- XORQ CX, AX
- ADDQ R9, AX
- MOVQ R10, DI
- MOVQ R12, BX
- RORQ $0x1c, DI
- MOVQ R10, DX
- ANDQ R11, BX
- RORQ $0x22, DX
- MOVQ R10, CX
- ANDQ R12, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R10, DX
- MOVQ R11, CX
- RORQ $0x27, DX
- ANDQ R10, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R9
- ADDQ AX, R13
- ADDQ AX, R9
- MOVQ 56(SI), AX
- BSWAPQ AX
- MOVQ AX, 56(BP)
- MOVQ $0xab1c5ed5da6d8118, DX
- ADDQ AX, R8
- MOVQ R13, AX
- ADDQ DX, R8
- MOVQ R13, CX
- RORQ $0x0e, AX
- MOVQ R13, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R13, CX
- RORQ $0x29, DX
- ANDQ R14, CX
- XORQ AX, DX
- MOVQ R13, AX
- NOTQ AX
- ADDQ DX, R8
- ANDQ R15, AX
- XORQ CX, AX
- ADDQ R8, AX
- MOVQ R9, DI
- MOVQ R11, BX
- RORQ $0x1c, DI
- MOVQ R9, DX
- ANDQ R10, BX
- RORQ $0x22, DX
- MOVQ R9, CX
- ANDQ R11, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R9, DX
- MOVQ R10, CX
- RORQ $0x27, DX
- ANDQ R9, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R8
- ADDQ AX, R12
- ADDQ AX, R8
- MOVQ 64(SI), AX
- BSWAPQ AX
- MOVQ AX, 64(BP)
- MOVQ $0xd807aa98a3030242, DX
- ADDQ AX, R15
- MOVQ R12, AX
- ADDQ DX, R15
- MOVQ R12, CX
- RORQ $0x0e, AX
- MOVQ R12, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R12, CX
- RORQ $0x29, DX
- ANDQ R13, CX
- XORQ AX, DX
- MOVQ R12, AX
- NOTQ AX
- ADDQ DX, R15
- ANDQ R14, AX
- XORQ CX, AX
- ADDQ R15, AX
- MOVQ R8, DI
- MOVQ R10, BX
- RORQ $0x1c, DI
- MOVQ R8, DX
- ANDQ R9, BX
- RORQ $0x22, DX
- MOVQ R8, CX
- ANDQ R10, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R8, DX
- MOVQ R9, CX
- RORQ $0x27, DX
- ANDQ R8, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R15
- ADDQ AX, R11
- ADDQ AX, R15
- MOVQ 72(SI), AX
- BSWAPQ AX
- MOVQ AX, 72(BP)
- MOVQ $0x12835b0145706fbe, DX
- ADDQ AX, R14
- MOVQ R11, AX
- ADDQ DX, R14
- MOVQ R11, CX
- RORQ $0x0e, AX
- MOVQ R11, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R11, CX
- RORQ $0x29, DX
- ANDQ R12, CX
- XORQ AX, DX
- MOVQ R11, AX
- NOTQ AX
- ADDQ DX, R14
- ANDQ R13, AX
- XORQ CX, AX
- ADDQ R14, AX
- MOVQ R15, DI
- MOVQ R9, BX
- RORQ $0x1c, DI
- MOVQ R15, DX
- ANDQ R8, BX
- RORQ $0x22, DX
- MOVQ R15, CX
- ANDQ R9, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R15, DX
- MOVQ R8, CX
- RORQ $0x27, DX
- ANDQ R15, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R14
- ADDQ AX, R10
- ADDQ AX, R14
- MOVQ 80(SI), AX
- BSWAPQ AX
- MOVQ AX, 80(BP)
- MOVQ $0x243185be4ee4b28c, DX
- ADDQ AX, R13
- MOVQ R10, AX
- ADDQ DX, R13
- MOVQ R10, CX
- RORQ $0x0e, AX
- MOVQ R10, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R10, CX
- RORQ $0x29, DX
- ANDQ R11, CX
- XORQ AX, DX
- MOVQ R10, AX
- NOTQ AX
- ADDQ DX, R13
- ANDQ R12, AX
- XORQ CX, AX
- ADDQ R13, AX
- MOVQ R14, DI
- MOVQ R8, BX
- RORQ $0x1c, DI
- MOVQ R14, DX
- ANDQ R15, BX
- RORQ $0x22, DX
- MOVQ R14, CX
- ANDQ R8, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R14, DX
- MOVQ R15, CX
- RORQ $0x27, DX
- ANDQ R14, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R13
- ADDQ AX, R9
- ADDQ AX, R13
- MOVQ 88(SI), AX
- BSWAPQ AX
- MOVQ AX, 88(BP)
- MOVQ $0x550c7dc3d5ffb4e2, DX
- ADDQ AX, R12
- MOVQ R9, AX
- ADDQ DX, R12
- MOVQ R9, CX
- RORQ $0x0e, AX
- MOVQ R9, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R9, CX
- RORQ $0x29, DX
- ANDQ R10, CX
- XORQ AX, DX
- MOVQ R9, AX
- NOTQ AX
- ADDQ DX, R12
- ANDQ R11, AX
- XORQ CX, AX
- ADDQ R12, AX
- MOVQ R13, DI
- MOVQ R15, BX
- RORQ $0x1c, DI
- MOVQ R13, DX
- ANDQ R14, BX
- RORQ $0x22, DX
- MOVQ R13, CX
- ANDQ R15, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R13, DX
- MOVQ R14, CX
- RORQ $0x27, DX
- ANDQ R13, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R12
- ADDQ AX, R8
- ADDQ AX, R12
- MOVQ 96(SI), AX
- BSWAPQ AX
- MOVQ AX, 96(BP)
- MOVQ $0x72be5d74f27b896f, DX
- ADDQ AX, R11
- MOVQ R8, AX
- ADDQ DX, R11
- MOVQ R8, CX
- RORQ $0x0e, AX
- MOVQ R8, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R8, CX
- RORQ $0x29, DX
- ANDQ R9, CX
- XORQ AX, DX
- MOVQ R8, AX
- NOTQ AX
- ADDQ DX, R11
- ANDQ R10, AX
- XORQ CX, AX
- ADDQ R11, AX
- MOVQ R12, DI
- MOVQ R14, BX
- RORQ $0x1c, DI
- MOVQ R12, DX
- ANDQ R13, BX
- RORQ $0x22, DX
- MOVQ R12, CX
- ANDQ R14, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R12, DX
- MOVQ R13, CX
- RORQ $0x27, DX
- ANDQ R12, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R11
- ADDQ AX, R15
- ADDQ AX, R11
- MOVQ 104(SI), AX
- BSWAPQ AX
- MOVQ AX, 104(BP)
- MOVQ $0x80deb1fe3b1696b1, DX
- ADDQ AX, R10
- MOVQ R15, AX
- ADDQ DX, R10
- MOVQ R15, CX
- RORQ $0x0e, AX
- MOVQ R15, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R15, CX
- RORQ $0x29, DX
- ANDQ R8, CX
- XORQ AX, DX
- MOVQ R15, AX
- NOTQ AX
- ADDQ DX, R10
- ANDQ R9, AX
- XORQ CX, AX
- ADDQ R10, AX
- MOVQ R11, DI
- MOVQ R13, BX
- RORQ $0x1c, DI
- MOVQ R11, DX
- ANDQ R12, BX
- RORQ $0x22, DX
- MOVQ R11, CX
- ANDQ R13, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R11, DX
- MOVQ R12, CX
- RORQ $0x27, DX
- ANDQ R11, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R10
- ADDQ AX, R14
- ADDQ AX, R10
- MOVQ 112(SI), AX
- BSWAPQ AX
- MOVQ AX, 112(BP)
- MOVQ $0x9bdc06a725c71235, DX
- ADDQ AX, R9
- MOVQ R14, AX
- ADDQ DX, R9
- MOVQ R14, CX
- RORQ $0x0e, AX
- MOVQ R14, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R14, CX
- RORQ $0x29, DX
- ANDQ R15, CX
- XORQ AX, DX
- MOVQ R14, AX
- NOTQ AX
- ADDQ DX, R9
- ANDQ R8, AX
- XORQ CX, AX
- ADDQ R9, AX
- MOVQ R10, DI
- MOVQ R12, BX
- RORQ $0x1c, DI
- MOVQ R10, DX
- ANDQ R11, BX
- RORQ $0x22, DX
- MOVQ R10, CX
- ANDQ R12, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R10, DX
- MOVQ R11, CX
- RORQ $0x27, DX
- ANDQ R10, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R9
- ADDQ AX, R13
- ADDQ AX, R9
- MOVQ 120(SI), AX
- BSWAPQ AX
- MOVQ AX, 120(BP)
- MOVQ $0xc19bf174cf692694, DX
- ADDQ AX, R8
- MOVQ R13, AX
- ADDQ DX, R8
- MOVQ R13, CX
- RORQ $0x0e, AX
- MOVQ R13, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R13, CX
- RORQ $0x29, DX
- ANDQ R14, CX
- XORQ AX, DX
- MOVQ R13, AX
- NOTQ AX
- ADDQ DX, R8
- ANDQ R15, AX
- XORQ CX, AX
- ADDQ R8, AX
- MOVQ R9, DI
- MOVQ R11, BX
- RORQ $0x1c, DI
- MOVQ R9, DX
- ANDQ R10, BX
- RORQ $0x22, DX
- MOVQ R9, CX
- ANDQ R11, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R9, DX
- MOVQ R10, CX
- RORQ $0x27, DX
- ANDQ R9, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R8
- ADDQ AX, R12
- ADDQ AX, R8
- MOVQ 112(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 8(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 72(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ (BP), BX
- ADDQ BX, AX
- MOVQ AX, 128(BP)
- MOVQ $0xe49b69c19ef14ad2, DX
- ADDQ AX, R15
- MOVQ R12, AX
- ADDQ DX, R15
- MOVQ R12, CX
- RORQ $0x0e, AX
- MOVQ R12, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R12, CX
- RORQ $0x29, DX
- ANDQ R13, CX
- XORQ AX, DX
- MOVQ R12, AX
- NOTQ AX
- ADDQ DX, R15
- ANDQ R14, AX
- XORQ CX, AX
- ADDQ R15, AX
- MOVQ R8, DI
- MOVQ R10, BX
- RORQ $0x1c, DI
- MOVQ R8, DX
- ANDQ R9, BX
- RORQ $0x22, DX
- MOVQ R8, CX
- ANDQ R10, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R8, DX
- MOVQ R9, CX
- RORQ $0x27, DX
- ANDQ R8, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R15
- ADDQ AX, R11
- ADDQ AX, R15
- MOVQ 120(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 16(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 80(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 8(BP), BX
- ADDQ BX, AX
- MOVQ AX, 136(BP)
- MOVQ $0xefbe4786384f25e3, DX
- ADDQ AX, R14
- MOVQ R11, AX
- ADDQ DX, R14
- MOVQ R11, CX
- RORQ $0x0e, AX
- MOVQ R11, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R11, CX
- RORQ $0x29, DX
- ANDQ R12, CX
- XORQ AX, DX
- MOVQ R11, AX
- NOTQ AX
- ADDQ DX, R14
- ANDQ R13, AX
- XORQ CX, AX
- ADDQ R14, AX
- MOVQ R15, DI
- MOVQ R9, BX
- RORQ $0x1c, DI
- MOVQ R15, DX
- ANDQ R8, BX
- RORQ $0x22, DX
- MOVQ R15, CX
- ANDQ R9, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R15, DX
- MOVQ R8, CX
- RORQ $0x27, DX
- ANDQ R15, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R14
- ADDQ AX, R10
- ADDQ AX, R14
- MOVQ 128(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 24(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 88(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 16(BP), BX
- ADDQ BX, AX
- MOVQ AX, 144(BP)
- MOVQ $0x0fc19dc68b8cd5b5, DX
- ADDQ AX, R13
- MOVQ R10, AX
- ADDQ DX, R13
- MOVQ R10, CX
- RORQ $0x0e, AX
- MOVQ R10, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R10, CX
- RORQ $0x29, DX
- ANDQ R11, CX
- XORQ AX, DX
- MOVQ R10, AX
- NOTQ AX
- ADDQ DX, R13
- ANDQ R12, AX
- XORQ CX, AX
- ADDQ R13, AX
- MOVQ R14, DI
- MOVQ R8, BX
- RORQ $0x1c, DI
- MOVQ R14, DX
- ANDQ R15, BX
- RORQ $0x22, DX
- MOVQ R14, CX
- ANDQ R8, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R14, DX
- MOVQ R15, CX
- RORQ $0x27, DX
- ANDQ R14, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R13
- ADDQ AX, R9
- ADDQ AX, R13
- MOVQ 136(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 32(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 96(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 24(BP), BX
- ADDQ BX, AX
- MOVQ AX, 152(BP)
- MOVQ $0x240ca1cc77ac9c65, DX
- ADDQ AX, R12
- MOVQ R9, AX
- ADDQ DX, R12
- MOVQ R9, CX
- RORQ $0x0e, AX
- MOVQ R9, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R9, CX
- RORQ $0x29, DX
- ANDQ R10, CX
- XORQ AX, DX
- MOVQ R9, AX
- NOTQ AX
- ADDQ DX, R12
- ANDQ R11, AX
- XORQ CX, AX
- ADDQ R12, AX
- MOVQ R13, DI
- MOVQ R15, BX
- RORQ $0x1c, DI
- MOVQ R13, DX
- ANDQ R14, BX
- RORQ $0x22, DX
- MOVQ R13, CX
- ANDQ R15, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R13, DX
- MOVQ R14, CX
- RORQ $0x27, DX
- ANDQ R13, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R12
- ADDQ AX, R8
- ADDQ AX, R12
- MOVQ 144(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 40(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 104(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 32(BP), BX
- ADDQ BX, AX
- MOVQ AX, 160(BP)
- MOVQ $0x2de92c6f592b0275, DX
- ADDQ AX, R11
- MOVQ R8, AX
- ADDQ DX, R11
- MOVQ R8, CX
- RORQ $0x0e, AX
- MOVQ R8, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R8, CX
- RORQ $0x29, DX
- ANDQ R9, CX
- XORQ AX, DX
- MOVQ R8, AX
- NOTQ AX
- ADDQ DX, R11
- ANDQ R10, AX
- XORQ CX, AX
- ADDQ R11, AX
- MOVQ R12, DI
- MOVQ R14, BX
- RORQ $0x1c, DI
- MOVQ R12, DX
- ANDQ R13, BX
- RORQ $0x22, DX
- MOVQ R12, CX
- ANDQ R14, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R12, DX
- MOVQ R13, CX
- RORQ $0x27, DX
- ANDQ R12, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R11
- ADDQ AX, R15
- ADDQ AX, R11
- MOVQ 152(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 48(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 112(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 40(BP), BX
- ADDQ BX, AX
- MOVQ AX, 168(BP)
- MOVQ $0x4a7484aa6ea6e483, DX
- ADDQ AX, R10
- MOVQ R15, AX
- ADDQ DX, R10
- MOVQ R15, CX
- RORQ $0x0e, AX
- MOVQ R15, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R15, CX
- RORQ $0x29, DX
- ANDQ R8, CX
- XORQ AX, DX
- MOVQ R15, AX
- NOTQ AX
- ADDQ DX, R10
- ANDQ R9, AX
- XORQ CX, AX
- ADDQ R10, AX
- MOVQ R11, DI
- MOVQ R13, BX
- RORQ $0x1c, DI
- MOVQ R11, DX
- ANDQ R12, BX
- RORQ $0x22, DX
- MOVQ R11, CX
- ANDQ R13, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R11, DX
- MOVQ R12, CX
- RORQ $0x27, DX
- ANDQ R11, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R10
- ADDQ AX, R14
- ADDQ AX, R10
- MOVQ 160(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 56(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 120(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 48(BP), BX
- ADDQ BX, AX
- MOVQ AX, 176(BP)
- MOVQ $0x5cb0a9dcbd41fbd4, DX
- ADDQ AX, R9
- MOVQ R14, AX
- ADDQ DX, R9
- MOVQ R14, CX
- RORQ $0x0e, AX
- MOVQ R14, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R14, CX
- RORQ $0x29, DX
- ANDQ R15, CX
- XORQ AX, DX
- MOVQ R14, AX
- NOTQ AX
- ADDQ DX, R9
- ANDQ R8, AX
- XORQ CX, AX
- ADDQ R9, AX
- MOVQ R10, DI
- MOVQ R12, BX
- RORQ $0x1c, DI
- MOVQ R10, DX
- ANDQ R11, BX
- RORQ $0x22, DX
- MOVQ R10, CX
- ANDQ R12, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R10, DX
- MOVQ R11, CX
- RORQ $0x27, DX
- ANDQ R10, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R9
- ADDQ AX, R13
- ADDQ AX, R9
- MOVQ 168(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 64(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 128(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 56(BP), BX
- ADDQ BX, AX
- MOVQ AX, 184(BP)
- MOVQ $0x76f988da831153b5, DX
- ADDQ AX, R8
- MOVQ R13, AX
- ADDQ DX, R8
- MOVQ R13, CX
- RORQ $0x0e, AX
- MOVQ R13, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R13, CX
- RORQ $0x29, DX
- ANDQ R14, CX
- XORQ AX, DX
- MOVQ R13, AX
- NOTQ AX
- ADDQ DX, R8
- ANDQ R15, AX
- XORQ CX, AX
- ADDQ R8, AX
- MOVQ R9, DI
- MOVQ R11, BX
- RORQ $0x1c, DI
- MOVQ R9, DX
- ANDQ R10, BX
- RORQ $0x22, DX
- MOVQ R9, CX
- ANDQ R11, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R9, DX
- MOVQ R10, CX
- RORQ $0x27, DX
- ANDQ R9, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R8
- ADDQ AX, R12
- ADDQ AX, R8
- MOVQ 176(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 72(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 136(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 64(BP), BX
- ADDQ BX, AX
- MOVQ AX, 192(BP)
- MOVQ $0x983e5152ee66dfab, DX
- ADDQ AX, R15
- MOVQ R12, AX
- ADDQ DX, R15
- MOVQ R12, CX
- RORQ $0x0e, AX
- MOVQ R12, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R12, CX
- RORQ $0x29, DX
- ANDQ R13, CX
- XORQ AX, DX
- MOVQ R12, AX
- NOTQ AX
- ADDQ DX, R15
- ANDQ R14, AX
- XORQ CX, AX
- ADDQ R15, AX
- MOVQ R8, DI
- MOVQ R10, BX
- RORQ $0x1c, DI
- MOVQ R8, DX
- ANDQ R9, BX
- RORQ $0x22, DX
- MOVQ R8, CX
- ANDQ R10, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R8, DX
- MOVQ R9, CX
- RORQ $0x27, DX
- ANDQ R8, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R15
- ADDQ AX, R11
- ADDQ AX, R15
- MOVQ 184(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 80(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 144(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 72(BP), BX
- ADDQ BX, AX
- MOVQ AX, 200(BP)
- MOVQ $0xa831c66d2db43210, DX
- ADDQ AX, R14
- MOVQ R11, AX
- ADDQ DX, R14
- MOVQ R11, CX
- RORQ $0x0e, AX
- MOVQ R11, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R11, CX
- RORQ $0x29, DX
- ANDQ R12, CX
- XORQ AX, DX
- MOVQ R11, AX
- NOTQ AX
- ADDQ DX, R14
- ANDQ R13, AX
- XORQ CX, AX
- ADDQ R14, AX
- MOVQ R15, DI
- MOVQ R9, BX
- RORQ $0x1c, DI
- MOVQ R15, DX
- ANDQ R8, BX
- RORQ $0x22, DX
- MOVQ R15, CX
- ANDQ R9, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R15, DX
- MOVQ R8, CX
- RORQ $0x27, DX
- ANDQ R15, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R14
- ADDQ AX, R10
- ADDQ AX, R14
- MOVQ 192(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 88(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 152(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 80(BP), BX
- ADDQ BX, AX
- MOVQ AX, 208(BP)
- MOVQ $0xb00327c898fb213f, DX
- ADDQ AX, R13
- MOVQ R10, AX
- ADDQ DX, R13
- MOVQ R10, CX
- RORQ $0x0e, AX
- MOVQ R10, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R10, CX
- RORQ $0x29, DX
- ANDQ R11, CX
- XORQ AX, DX
- MOVQ R10, AX
- NOTQ AX
- ADDQ DX, R13
- ANDQ R12, AX
- XORQ CX, AX
- ADDQ R13, AX
- MOVQ R14, DI
- MOVQ R8, BX
- RORQ $0x1c, DI
- MOVQ R14, DX
- ANDQ R15, BX
- RORQ $0x22, DX
- MOVQ R14, CX
- ANDQ R8, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R14, DX
- MOVQ R15, CX
- RORQ $0x27, DX
- ANDQ R14, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R13
- ADDQ AX, R9
- ADDQ AX, R13
- MOVQ 200(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 96(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 160(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 88(BP), BX
- ADDQ BX, AX
- MOVQ AX, 216(BP)
- MOVQ $0xbf597fc7beef0ee4, DX
- ADDQ AX, R12
- MOVQ R9, AX
- ADDQ DX, R12
- MOVQ R9, CX
- RORQ $0x0e, AX
- MOVQ R9, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R9, CX
- RORQ $0x29, DX
- ANDQ R10, CX
- XORQ AX, DX
- MOVQ R9, AX
- NOTQ AX
- ADDQ DX, R12
- ANDQ R11, AX
- XORQ CX, AX
- ADDQ R12, AX
- MOVQ R13, DI
- MOVQ R15, BX
- RORQ $0x1c, DI
- MOVQ R13, DX
- ANDQ R14, BX
- RORQ $0x22, DX
- MOVQ R13, CX
- ANDQ R15, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R13, DX
- MOVQ R14, CX
- RORQ $0x27, DX
- ANDQ R13, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R12
- ADDQ AX, R8
- ADDQ AX, R12
- MOVQ 208(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 104(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 168(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 96(BP), BX
- ADDQ BX, AX
- MOVQ AX, 224(BP)
- MOVQ $0xc6e00bf33da88fc2, DX
- ADDQ AX, R11
- MOVQ R8, AX
- ADDQ DX, R11
- MOVQ R8, CX
- RORQ $0x0e, AX
- MOVQ R8, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R8, CX
- RORQ $0x29, DX
- ANDQ R9, CX
- XORQ AX, DX
- MOVQ R8, AX
- NOTQ AX
- ADDQ DX, R11
- ANDQ R10, AX
- XORQ CX, AX
- ADDQ R11, AX
- MOVQ R12, DI
- MOVQ R14, BX
- RORQ $0x1c, DI
- MOVQ R12, DX
- ANDQ R13, BX
- RORQ $0x22, DX
- MOVQ R12, CX
- ANDQ R14, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R12, DX
- MOVQ R13, CX
- RORQ $0x27, DX
- ANDQ R12, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R11
- ADDQ AX, R15
- ADDQ AX, R11
- MOVQ 216(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 112(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 176(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 104(BP), BX
- ADDQ BX, AX
- MOVQ AX, 232(BP)
- MOVQ $0xd5a79147930aa725, DX
- ADDQ AX, R10
- MOVQ R15, AX
- ADDQ DX, R10
- MOVQ R15, CX
- RORQ $0x0e, AX
- MOVQ R15, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R15, CX
- RORQ $0x29, DX
- ANDQ R8, CX
- XORQ AX, DX
- MOVQ R15, AX
- NOTQ AX
- ADDQ DX, R10
- ANDQ R9, AX
- XORQ CX, AX
- ADDQ R10, AX
- MOVQ R11, DI
- MOVQ R13, BX
- RORQ $0x1c, DI
- MOVQ R11, DX
- ANDQ R12, BX
- RORQ $0x22, DX
- MOVQ R11, CX
- ANDQ R13, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R11, DX
- MOVQ R12, CX
- RORQ $0x27, DX
- ANDQ R11, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R10
- ADDQ AX, R14
- ADDQ AX, R10
- MOVQ 224(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 120(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 184(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 112(BP), BX
- ADDQ BX, AX
- MOVQ AX, 240(BP)
- MOVQ $0x06ca6351e003826f, DX
- ADDQ AX, R9
- MOVQ R14, AX
- ADDQ DX, R9
- MOVQ R14, CX
- RORQ $0x0e, AX
- MOVQ R14, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R14, CX
- RORQ $0x29, DX
- ANDQ R15, CX
- XORQ AX, DX
- MOVQ R14, AX
- NOTQ AX
- ADDQ DX, R9
- ANDQ R8, AX
- XORQ CX, AX
- ADDQ R9, AX
- MOVQ R10, DI
- MOVQ R12, BX
- RORQ $0x1c, DI
- MOVQ R10, DX
- ANDQ R11, BX
- RORQ $0x22, DX
- MOVQ R10, CX
- ANDQ R12, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R10, DX
- MOVQ R11, CX
- RORQ $0x27, DX
- ANDQ R10, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R9
- ADDQ AX, R13
- ADDQ AX, R9
- MOVQ 232(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 128(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 192(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 120(BP), BX
- ADDQ BX, AX
- MOVQ AX, 248(BP)
- MOVQ $0x142929670a0e6e70, DX
- ADDQ AX, R8
- MOVQ R13, AX
- ADDQ DX, R8
- MOVQ R13, CX
- RORQ $0x0e, AX
- MOVQ R13, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R13, CX
- RORQ $0x29, DX
- ANDQ R14, CX
- XORQ AX, DX
- MOVQ R13, AX
- NOTQ AX
- ADDQ DX, R8
- ANDQ R15, AX
- XORQ CX, AX
- ADDQ R8, AX
- MOVQ R9, DI
- MOVQ R11, BX
- RORQ $0x1c, DI
- MOVQ R9, DX
- ANDQ R10, BX
- RORQ $0x22, DX
- MOVQ R9, CX
- ANDQ R11, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R9, DX
- MOVQ R10, CX
- RORQ $0x27, DX
- ANDQ R9, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R8
- ADDQ AX, R12
- ADDQ AX, R8
- MOVQ 240(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 136(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 200(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 128(BP), BX
- ADDQ BX, AX
- MOVQ AX, 256(BP)
- MOVQ $0x27b70a8546d22ffc, DX
- ADDQ AX, R15
- MOVQ R12, AX
- ADDQ DX, R15
- MOVQ R12, CX
- RORQ $0x0e, AX
- MOVQ R12, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R12, CX
- RORQ $0x29, DX
- ANDQ R13, CX
- XORQ AX, DX
- MOVQ R12, AX
- NOTQ AX
- ADDQ DX, R15
- ANDQ R14, AX
- XORQ CX, AX
- ADDQ R15, AX
- MOVQ R8, DI
- MOVQ R10, BX
- RORQ $0x1c, DI
- MOVQ R8, DX
- ANDQ R9, BX
- RORQ $0x22, DX
- MOVQ R8, CX
- ANDQ R10, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R8, DX
- MOVQ R9, CX
- RORQ $0x27, DX
- ANDQ R8, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R15
- ADDQ AX, R11
- ADDQ AX, R15
- MOVQ 248(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 144(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 208(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 136(BP), BX
- ADDQ BX, AX
- MOVQ AX, 264(BP)
- MOVQ $0x2e1b21385c26c926, DX
- ADDQ AX, R14
- MOVQ R11, AX
- ADDQ DX, R14
- MOVQ R11, CX
- RORQ $0x0e, AX
- MOVQ R11, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R11, CX
- RORQ $0x29, DX
- ANDQ R12, CX
- XORQ AX, DX
- MOVQ R11, AX
- NOTQ AX
- ADDQ DX, R14
- ANDQ R13, AX
- XORQ CX, AX
- ADDQ R14, AX
- MOVQ R15, DI
- MOVQ R9, BX
- RORQ $0x1c, DI
- MOVQ R15, DX
- ANDQ R8, BX
- RORQ $0x22, DX
- MOVQ R15, CX
- ANDQ R9, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R15, DX
- MOVQ R8, CX
- RORQ $0x27, DX
- ANDQ R15, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R14
- ADDQ AX, R10
- ADDQ AX, R14
- MOVQ 256(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 152(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 216(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 144(BP), BX
- ADDQ BX, AX
- MOVQ AX, 272(BP)
- MOVQ $0x4d2c6dfc5ac42aed, DX
- ADDQ AX, R13
- MOVQ R10, AX
- ADDQ DX, R13
- MOVQ R10, CX
- RORQ $0x0e, AX
- MOVQ R10, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R10, CX
- RORQ $0x29, DX
- ANDQ R11, CX
- XORQ AX, DX
- MOVQ R10, AX
- NOTQ AX
- ADDQ DX, R13
- ANDQ R12, AX
- XORQ CX, AX
- ADDQ R13, AX
- MOVQ R14, DI
- MOVQ R8, BX
- RORQ $0x1c, DI
- MOVQ R14, DX
- ANDQ R15, BX
- RORQ $0x22, DX
- MOVQ R14, CX
- ANDQ R8, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R14, DX
- MOVQ R15, CX
- RORQ $0x27, DX
- ANDQ R14, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R13
- ADDQ AX, R9
- ADDQ AX, R13
- MOVQ 264(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 160(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 224(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 152(BP), BX
- ADDQ BX, AX
- MOVQ AX, 280(BP)
- MOVQ $0x53380d139d95b3df, DX
- ADDQ AX, R12
- MOVQ R9, AX
- ADDQ DX, R12
- MOVQ R9, CX
- RORQ $0x0e, AX
- MOVQ R9, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R9, CX
- RORQ $0x29, DX
- ANDQ R10, CX
- XORQ AX, DX
- MOVQ R9, AX
- NOTQ AX
- ADDQ DX, R12
- ANDQ R11, AX
- XORQ CX, AX
- ADDQ R12, AX
- MOVQ R13, DI
- MOVQ R15, BX
- RORQ $0x1c, DI
- MOVQ R13, DX
- ANDQ R14, BX
- RORQ $0x22, DX
- MOVQ R13, CX
- ANDQ R15, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R13, DX
- MOVQ R14, CX
- RORQ $0x27, DX
- ANDQ R13, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R12
- ADDQ AX, R8
- ADDQ AX, R12
- MOVQ 272(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 168(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 232(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 160(BP), BX
- ADDQ BX, AX
- MOVQ AX, 288(BP)
- MOVQ $0x650a73548baf63de, DX
- ADDQ AX, R11
- MOVQ R8, AX
- ADDQ DX, R11
- MOVQ R8, CX
- RORQ $0x0e, AX
- MOVQ R8, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R8, CX
- RORQ $0x29, DX
- ANDQ R9, CX
- XORQ AX, DX
- MOVQ R8, AX
- NOTQ AX
- ADDQ DX, R11
- ANDQ R10, AX
- XORQ CX, AX
- ADDQ R11, AX
- MOVQ R12, DI
- MOVQ R14, BX
- RORQ $0x1c, DI
- MOVQ R12, DX
- ANDQ R13, BX
- RORQ $0x22, DX
- MOVQ R12, CX
- ANDQ R14, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R12, DX
- MOVQ R13, CX
- RORQ $0x27, DX
- ANDQ R12, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R11
- ADDQ AX, R15
- ADDQ AX, R11
- MOVQ 280(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 176(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 240(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 168(BP), BX
- ADDQ BX, AX
- MOVQ AX, 296(BP)
- MOVQ $0x766a0abb3c77b2a8, DX
- ADDQ AX, R10
- MOVQ R15, AX
- ADDQ DX, R10
- MOVQ R15, CX
- RORQ $0x0e, AX
- MOVQ R15, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R15, CX
- RORQ $0x29, DX
- ANDQ R8, CX
- XORQ AX, DX
- MOVQ R15, AX
- NOTQ AX
- ADDQ DX, R10
- ANDQ R9, AX
- XORQ CX, AX
- ADDQ R10, AX
- MOVQ R11, DI
- MOVQ R13, BX
- RORQ $0x1c, DI
- MOVQ R11, DX
- ANDQ R12, BX
- RORQ $0x22, DX
- MOVQ R11, CX
- ANDQ R13, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R11, DX
- MOVQ R12, CX
- RORQ $0x27, DX
- ANDQ R11, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R10
- ADDQ AX, R14
- ADDQ AX, R10
- MOVQ 288(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 184(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 248(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 176(BP), BX
- ADDQ BX, AX
- MOVQ AX, 304(BP)
- MOVQ $0x81c2c92e47edaee6, DX
- ADDQ AX, R9
- MOVQ R14, AX
- ADDQ DX, R9
- MOVQ R14, CX
- RORQ $0x0e, AX
- MOVQ R14, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R14, CX
- RORQ $0x29, DX
- ANDQ R15, CX
- XORQ AX, DX
- MOVQ R14, AX
- NOTQ AX
- ADDQ DX, R9
- ANDQ R8, AX
- XORQ CX, AX
- ADDQ R9, AX
- MOVQ R10, DI
- MOVQ R12, BX
- RORQ $0x1c, DI
- MOVQ R10, DX
- ANDQ R11, BX
- RORQ $0x22, DX
- MOVQ R10, CX
- ANDQ R12, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R10, DX
- MOVQ R11, CX
- RORQ $0x27, DX
- ANDQ R10, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R9
- ADDQ AX, R13
- ADDQ AX, R9
- MOVQ 296(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 192(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 256(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 184(BP), BX
- ADDQ BX, AX
- MOVQ AX, 312(BP)
- MOVQ $0x92722c851482353b, DX
- ADDQ AX, R8
- MOVQ R13, AX
- ADDQ DX, R8
- MOVQ R13, CX
- RORQ $0x0e, AX
- MOVQ R13, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R13, CX
- RORQ $0x29, DX
- ANDQ R14, CX
- XORQ AX, DX
- MOVQ R13, AX
- NOTQ AX
- ADDQ DX, R8
- ANDQ R15, AX
- XORQ CX, AX
- ADDQ R8, AX
- MOVQ R9, DI
- MOVQ R11, BX
- RORQ $0x1c, DI
- MOVQ R9, DX
- ANDQ R10, BX
- RORQ $0x22, DX
- MOVQ R9, CX
- ANDQ R11, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R9, DX
- MOVQ R10, CX
- RORQ $0x27, DX
- ANDQ R9, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R8
- ADDQ AX, R12
- ADDQ AX, R8
- MOVQ 304(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 200(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 264(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 192(BP), BX
- ADDQ BX, AX
- MOVQ AX, 320(BP)
- MOVQ $0xa2bfe8a14cf10364, DX
- ADDQ AX, R15
- MOVQ R12, AX
- ADDQ DX, R15
- MOVQ R12, CX
- RORQ $0x0e, AX
- MOVQ R12, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R12, CX
- RORQ $0x29, DX
- ANDQ R13, CX
- XORQ AX, DX
- MOVQ R12, AX
- NOTQ AX
- ADDQ DX, R15
- ANDQ R14, AX
- XORQ CX, AX
- ADDQ R15, AX
- MOVQ R8, DI
- MOVQ R10, BX
- RORQ $0x1c, DI
- MOVQ R8, DX
- ANDQ R9, BX
- RORQ $0x22, DX
- MOVQ R8, CX
- ANDQ R10, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R8, DX
- MOVQ R9, CX
- RORQ $0x27, DX
- ANDQ R8, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R15
- ADDQ AX, R11
- ADDQ AX, R15
- MOVQ 312(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 208(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 272(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 200(BP), BX
- ADDQ BX, AX
- MOVQ AX, 328(BP)
- MOVQ $0xa81a664bbc423001, DX
- ADDQ AX, R14
- MOVQ R11, AX
- ADDQ DX, R14
- MOVQ R11, CX
- RORQ $0x0e, AX
- MOVQ R11, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R11, CX
- RORQ $0x29, DX
- ANDQ R12, CX
- XORQ AX, DX
- MOVQ R11, AX
- NOTQ AX
- ADDQ DX, R14
- ANDQ R13, AX
- XORQ CX, AX
- ADDQ R14, AX
- MOVQ R15, DI
- MOVQ R9, BX
- RORQ $0x1c, DI
- MOVQ R15, DX
- ANDQ R8, BX
- RORQ $0x22, DX
- MOVQ R15, CX
- ANDQ R9, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R15, DX
- MOVQ R8, CX
- RORQ $0x27, DX
- ANDQ R15, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R14
- ADDQ AX, R10
- ADDQ AX, R14
- MOVQ 320(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 216(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 280(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 208(BP), BX
- ADDQ BX, AX
- MOVQ AX, 336(BP)
- MOVQ $0xc24b8b70d0f89791, DX
- ADDQ AX, R13
- MOVQ R10, AX
- ADDQ DX, R13
- MOVQ R10, CX
- RORQ $0x0e, AX
- MOVQ R10, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R10, CX
- RORQ $0x29, DX
- ANDQ R11, CX
- XORQ AX, DX
- MOVQ R10, AX
- NOTQ AX
- ADDQ DX, R13
- ANDQ R12, AX
- XORQ CX, AX
- ADDQ R13, AX
- MOVQ R14, DI
- MOVQ R8, BX
- RORQ $0x1c, DI
- MOVQ R14, DX
- ANDQ R15, BX
- RORQ $0x22, DX
- MOVQ R14, CX
- ANDQ R8, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R14, DX
- MOVQ R15, CX
- RORQ $0x27, DX
- ANDQ R14, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R13
- ADDQ AX, R9
- ADDQ AX, R13
- MOVQ 328(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 224(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 288(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 216(BP), BX
- ADDQ BX, AX
- MOVQ AX, 344(BP)
- MOVQ $0xc76c51a30654be30, DX
- ADDQ AX, R12
- MOVQ R9, AX
- ADDQ DX, R12
- MOVQ R9, CX
- RORQ $0x0e, AX
- MOVQ R9, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R9, CX
- RORQ $0x29, DX
- ANDQ R10, CX
- XORQ AX, DX
- MOVQ R9, AX
- NOTQ AX
- ADDQ DX, R12
- ANDQ R11, AX
- XORQ CX, AX
- ADDQ R12, AX
- MOVQ R13, DI
- MOVQ R15, BX
- RORQ $0x1c, DI
- MOVQ R13, DX
- ANDQ R14, BX
- RORQ $0x22, DX
- MOVQ R13, CX
- ANDQ R15, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R13, DX
- MOVQ R14, CX
- RORQ $0x27, DX
- ANDQ R13, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R12
- ADDQ AX, R8
- ADDQ AX, R12
- MOVQ 336(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 232(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 296(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 224(BP), BX
- ADDQ BX, AX
- MOVQ AX, 352(BP)
- MOVQ $0xd192e819d6ef5218, DX
- ADDQ AX, R11
- MOVQ R8, AX
- ADDQ DX, R11
- MOVQ R8, CX
- RORQ $0x0e, AX
- MOVQ R8, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R8, CX
- RORQ $0x29, DX
- ANDQ R9, CX
- XORQ AX, DX
- MOVQ R8, AX
- NOTQ AX
- ADDQ DX, R11
- ANDQ R10, AX
- XORQ CX, AX
- ADDQ R11, AX
- MOVQ R12, DI
- MOVQ R14, BX
- RORQ $0x1c, DI
- MOVQ R12, DX
- ANDQ R13, BX
- RORQ $0x22, DX
- MOVQ R12, CX
- ANDQ R14, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R12, DX
- MOVQ R13, CX
- RORQ $0x27, DX
- ANDQ R12, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R11
- ADDQ AX, R15
- ADDQ AX, R11
- MOVQ 344(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 240(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 304(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 232(BP), BX
- ADDQ BX, AX
- MOVQ AX, 360(BP)
- MOVQ $0xd69906245565a910, DX
- ADDQ AX, R10
- MOVQ R15, AX
- ADDQ DX, R10
- MOVQ R15, CX
- RORQ $0x0e, AX
- MOVQ R15, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R15, CX
- RORQ $0x29, DX
- ANDQ R8, CX
- XORQ AX, DX
- MOVQ R15, AX
- NOTQ AX
- ADDQ DX, R10
- ANDQ R9, AX
- XORQ CX, AX
- ADDQ R10, AX
- MOVQ R11, DI
- MOVQ R13, BX
- RORQ $0x1c, DI
- MOVQ R11, DX
- ANDQ R12, BX
- RORQ $0x22, DX
- MOVQ R11, CX
- ANDQ R13, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R11, DX
- MOVQ R12, CX
- RORQ $0x27, DX
- ANDQ R11, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R10
- ADDQ AX, R14
- ADDQ AX, R10
- MOVQ 352(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 248(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 312(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 240(BP), BX
- ADDQ BX, AX
- MOVQ AX, 368(BP)
- MOVQ $0xf40e35855771202a, DX
- ADDQ AX, R9
- MOVQ R14, AX
- ADDQ DX, R9
- MOVQ R14, CX
- RORQ $0x0e, AX
- MOVQ R14, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R14, CX
- RORQ $0x29, DX
- ANDQ R15, CX
- XORQ AX, DX
- MOVQ R14, AX
- NOTQ AX
- ADDQ DX, R9
- ANDQ R8, AX
- XORQ CX, AX
- ADDQ R9, AX
- MOVQ R10, DI
- MOVQ R12, BX
- RORQ $0x1c, DI
- MOVQ R10, DX
- ANDQ R11, BX
- RORQ $0x22, DX
- MOVQ R10, CX
- ANDQ R12, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R10, DX
- MOVQ R11, CX
- RORQ $0x27, DX
- ANDQ R10, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R9
- ADDQ AX, R13
- ADDQ AX, R9
- MOVQ 360(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 256(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 320(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 248(BP), BX
- ADDQ BX, AX
- MOVQ AX, 376(BP)
- MOVQ $0x106aa07032bbd1b8, DX
- ADDQ AX, R8
- MOVQ R13, AX
- ADDQ DX, R8
- MOVQ R13, CX
- RORQ $0x0e, AX
- MOVQ R13, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R13, CX
- RORQ $0x29, DX
- ANDQ R14, CX
- XORQ AX, DX
- MOVQ R13, AX
- NOTQ AX
- ADDQ DX, R8
- ANDQ R15, AX
- XORQ CX, AX
- ADDQ R8, AX
- MOVQ R9, DI
- MOVQ R11, BX
- RORQ $0x1c, DI
- MOVQ R9, DX
- ANDQ R10, BX
- RORQ $0x22, DX
- MOVQ R9, CX
- ANDQ R11, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R9, DX
- MOVQ R10, CX
- RORQ $0x27, DX
- ANDQ R9, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R8
- ADDQ AX, R12
- ADDQ AX, R8
- MOVQ 368(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 264(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 328(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 256(BP), BX
- ADDQ BX, AX
- MOVQ AX, 384(BP)
- MOVQ $0x19a4c116b8d2d0c8, DX
- ADDQ AX, R15
- MOVQ R12, AX
- ADDQ DX, R15
- MOVQ R12, CX
- RORQ $0x0e, AX
- MOVQ R12, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R12, CX
- RORQ $0x29, DX
- ANDQ R13, CX
- XORQ AX, DX
- MOVQ R12, AX
- NOTQ AX
- ADDQ DX, R15
- ANDQ R14, AX
- XORQ CX, AX
- ADDQ R15, AX
- MOVQ R8, DI
- MOVQ R10, BX
- RORQ $0x1c, DI
- MOVQ R8, DX
- ANDQ R9, BX
- RORQ $0x22, DX
- MOVQ R8, CX
- ANDQ R10, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R8, DX
- MOVQ R9, CX
- RORQ $0x27, DX
- ANDQ R8, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R15
- ADDQ AX, R11
- ADDQ AX, R15
- MOVQ 376(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 272(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 336(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 264(BP), BX
- ADDQ BX, AX
- MOVQ AX, 392(BP)
- MOVQ $0x1e376c085141ab53, DX
- ADDQ AX, R14
- MOVQ R11, AX
- ADDQ DX, R14
- MOVQ R11, CX
- RORQ $0x0e, AX
- MOVQ R11, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R11, CX
- RORQ $0x29, DX
- ANDQ R12, CX
- XORQ AX, DX
- MOVQ R11, AX
- NOTQ AX
- ADDQ DX, R14
- ANDQ R13, AX
- XORQ CX, AX
- ADDQ R14, AX
- MOVQ R15, DI
- MOVQ R9, BX
- RORQ $0x1c, DI
- MOVQ R15, DX
- ANDQ R8, BX
- RORQ $0x22, DX
- MOVQ R15, CX
- ANDQ R9, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R15, DX
- MOVQ R8, CX
- RORQ $0x27, DX
- ANDQ R15, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R14
- ADDQ AX, R10
- ADDQ AX, R14
- MOVQ 384(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 280(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 344(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 272(BP), BX
- ADDQ BX, AX
- MOVQ AX, 400(BP)
- MOVQ $0x2748774cdf8eeb99, DX
- ADDQ AX, R13
- MOVQ R10, AX
- ADDQ DX, R13
- MOVQ R10, CX
- RORQ $0x0e, AX
- MOVQ R10, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R10, CX
- RORQ $0x29, DX
- ANDQ R11, CX
- XORQ AX, DX
- MOVQ R10, AX
- NOTQ AX
- ADDQ DX, R13
- ANDQ R12, AX
- XORQ CX, AX
- ADDQ R13, AX
- MOVQ R14, DI
- MOVQ R8, BX
- RORQ $0x1c, DI
- MOVQ R14, DX
- ANDQ R15, BX
- RORQ $0x22, DX
- MOVQ R14, CX
- ANDQ R8, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R14, DX
- MOVQ R15, CX
- RORQ $0x27, DX
- ANDQ R14, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R13
- ADDQ AX, R9
- ADDQ AX, R13
- MOVQ 392(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 288(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 352(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 280(BP), BX
- ADDQ BX, AX
- MOVQ AX, 408(BP)
- MOVQ $0x34b0bcb5e19b48a8, DX
- ADDQ AX, R12
- MOVQ R9, AX
- ADDQ DX, R12
- MOVQ R9, CX
- RORQ $0x0e, AX
- MOVQ R9, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R9, CX
- RORQ $0x29, DX
- ANDQ R10, CX
- XORQ AX, DX
- MOVQ R9, AX
- NOTQ AX
- ADDQ DX, R12
- ANDQ R11, AX
- XORQ CX, AX
- ADDQ R12, AX
- MOVQ R13, DI
- MOVQ R15, BX
- RORQ $0x1c, DI
- MOVQ R13, DX
- ANDQ R14, BX
- RORQ $0x22, DX
- MOVQ R13, CX
- ANDQ R15, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R13, DX
- MOVQ R14, CX
- RORQ $0x27, DX
- ANDQ R13, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R12
- ADDQ AX, R8
- ADDQ AX, R12
- MOVQ 400(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 296(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 360(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 288(BP), BX
- ADDQ BX, AX
- MOVQ AX, 416(BP)
- MOVQ $0x391c0cb3c5c95a63, DX
- ADDQ AX, R11
- MOVQ R8, AX
- ADDQ DX, R11
- MOVQ R8, CX
- RORQ $0x0e, AX
- MOVQ R8, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R8, CX
- RORQ $0x29, DX
- ANDQ R9, CX
- XORQ AX, DX
- MOVQ R8, AX
- NOTQ AX
- ADDQ DX, R11
- ANDQ R10, AX
- XORQ CX, AX
- ADDQ R11, AX
- MOVQ R12, DI
- MOVQ R14, BX
- RORQ $0x1c, DI
- MOVQ R12, DX
- ANDQ R13, BX
- RORQ $0x22, DX
- MOVQ R12, CX
- ANDQ R14, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R12, DX
- MOVQ R13, CX
- RORQ $0x27, DX
- ANDQ R12, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R11
- ADDQ AX, R15
- ADDQ AX, R11
- MOVQ 408(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 304(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 368(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 296(BP), BX
- ADDQ BX, AX
- MOVQ AX, 424(BP)
- MOVQ $0x4ed8aa4ae3418acb, DX
- ADDQ AX, R10
- MOVQ R15, AX
- ADDQ DX, R10
- MOVQ R15, CX
- RORQ $0x0e, AX
- MOVQ R15, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R15, CX
- RORQ $0x29, DX
- ANDQ R8, CX
- XORQ AX, DX
- MOVQ R15, AX
- NOTQ AX
- ADDQ DX, R10
- ANDQ R9, AX
- XORQ CX, AX
- ADDQ R10, AX
- MOVQ R11, DI
- MOVQ R13, BX
- RORQ $0x1c, DI
- MOVQ R11, DX
- ANDQ R12, BX
- RORQ $0x22, DX
- MOVQ R11, CX
- ANDQ R13, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R11, DX
- MOVQ R12, CX
- RORQ $0x27, DX
- ANDQ R11, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R10
- ADDQ AX, R14
- ADDQ AX, R10
- MOVQ 416(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 312(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 376(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 304(BP), BX
- ADDQ BX, AX
- MOVQ AX, 432(BP)
- MOVQ $0x5b9cca4f7763e373, DX
- ADDQ AX, R9
- MOVQ R14, AX
- ADDQ DX, R9
- MOVQ R14, CX
- RORQ $0x0e, AX
- MOVQ R14, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R14, CX
- RORQ $0x29, DX
- ANDQ R15, CX
- XORQ AX, DX
- MOVQ R14, AX
- NOTQ AX
- ADDQ DX, R9
- ANDQ R8, AX
- XORQ CX, AX
- ADDQ R9, AX
- MOVQ R10, DI
- MOVQ R12, BX
- RORQ $0x1c, DI
- MOVQ R10, DX
- ANDQ R11, BX
- RORQ $0x22, DX
- MOVQ R10, CX
- ANDQ R12, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R10, DX
- MOVQ R11, CX
- RORQ $0x27, DX
- ANDQ R10, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R9
- ADDQ AX, R13
- ADDQ AX, R9
- MOVQ 424(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 320(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 384(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 312(BP), BX
- ADDQ BX, AX
- MOVQ AX, 440(BP)
- MOVQ $0x682e6ff3d6b2b8a3, DX
- ADDQ AX, R8
- MOVQ R13, AX
- ADDQ DX, R8
- MOVQ R13, CX
- RORQ $0x0e, AX
- MOVQ R13, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R13, CX
- RORQ $0x29, DX
- ANDQ R14, CX
- XORQ AX, DX
- MOVQ R13, AX
- NOTQ AX
- ADDQ DX, R8
- ANDQ R15, AX
- XORQ CX, AX
- ADDQ R8, AX
- MOVQ R9, DI
- MOVQ R11, BX
- RORQ $0x1c, DI
- MOVQ R9, DX
- ANDQ R10, BX
- RORQ $0x22, DX
- MOVQ R9, CX
- ANDQ R11, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R9, DX
- MOVQ R10, CX
- RORQ $0x27, DX
- ANDQ R9, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R8
- ADDQ AX, R12
- ADDQ AX, R8
- MOVQ 432(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 328(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 392(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 320(BP), BX
- ADDQ BX, AX
- MOVQ AX, 448(BP)
- MOVQ $0x748f82ee5defb2fc, DX
- ADDQ AX, R15
- MOVQ R12, AX
- ADDQ DX, R15
- MOVQ R12, CX
- RORQ $0x0e, AX
- MOVQ R12, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R12, CX
- RORQ $0x29, DX
- ANDQ R13, CX
- XORQ AX, DX
- MOVQ R12, AX
- NOTQ AX
- ADDQ DX, R15
- ANDQ R14, AX
- XORQ CX, AX
- ADDQ R15, AX
- MOVQ R8, DI
- MOVQ R10, BX
- RORQ $0x1c, DI
- MOVQ R8, DX
- ANDQ R9, BX
- RORQ $0x22, DX
- MOVQ R8, CX
- ANDQ R10, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R8, DX
- MOVQ R9, CX
- RORQ $0x27, DX
- ANDQ R8, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R15
- ADDQ AX, R11
- ADDQ AX, R15
- MOVQ 440(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 336(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 400(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 328(BP), BX
- ADDQ BX, AX
- MOVQ AX, 456(BP)
- MOVQ $0x78a5636f43172f60, DX
- ADDQ AX, R14
- MOVQ R11, AX
- ADDQ DX, R14
- MOVQ R11, CX
- RORQ $0x0e, AX
- MOVQ R11, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R11, CX
- RORQ $0x29, DX
- ANDQ R12, CX
- XORQ AX, DX
- MOVQ R11, AX
- NOTQ AX
- ADDQ DX, R14
- ANDQ R13, AX
- XORQ CX, AX
- ADDQ R14, AX
- MOVQ R15, DI
- MOVQ R9, BX
- RORQ $0x1c, DI
- MOVQ R15, DX
- ANDQ R8, BX
- RORQ $0x22, DX
- MOVQ R15, CX
- ANDQ R9, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R15, DX
- MOVQ R8, CX
- RORQ $0x27, DX
- ANDQ R15, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R14
- ADDQ AX, R10
- ADDQ AX, R14
- MOVQ 448(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 344(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 408(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 336(BP), BX
- ADDQ BX, AX
- MOVQ AX, 464(BP)
- MOVQ $0x84c87814a1f0ab72, DX
- ADDQ AX, R13
- MOVQ R10, AX
- ADDQ DX, R13
- MOVQ R10, CX
- RORQ $0x0e, AX
- MOVQ R10, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R10, CX
- RORQ $0x29, DX
- ANDQ R11, CX
- XORQ AX, DX
- MOVQ R10, AX
- NOTQ AX
- ADDQ DX, R13
- ANDQ R12, AX
- XORQ CX, AX
- ADDQ R13, AX
- MOVQ R14, DI
- MOVQ R8, BX
- RORQ $0x1c, DI
- MOVQ R14, DX
- ANDQ R15, BX
- RORQ $0x22, DX
- MOVQ R14, CX
- ANDQ R8, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R14, DX
- MOVQ R15, CX
- RORQ $0x27, DX
- ANDQ R14, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R13
- ADDQ AX, R9
- ADDQ AX, R13
- MOVQ 456(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 352(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 416(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 344(BP), BX
- ADDQ BX, AX
- MOVQ AX, 472(BP)
- MOVQ $0x8cc702081a6439ec, DX
- ADDQ AX, R12
- MOVQ R9, AX
- ADDQ DX, R12
- MOVQ R9, CX
- RORQ $0x0e, AX
- MOVQ R9, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R9, CX
- RORQ $0x29, DX
- ANDQ R10, CX
- XORQ AX, DX
- MOVQ R9, AX
- NOTQ AX
- ADDQ DX, R12
- ANDQ R11, AX
- XORQ CX, AX
- ADDQ R12, AX
- MOVQ R13, DI
- MOVQ R15, BX
- RORQ $0x1c, DI
- MOVQ R13, DX
- ANDQ R14, BX
- RORQ $0x22, DX
- MOVQ R13, CX
- ANDQ R15, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R13, DX
- MOVQ R14, CX
- RORQ $0x27, DX
- ANDQ R13, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R12
- ADDQ AX, R8
- ADDQ AX, R12
- MOVQ 464(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 360(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 424(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 352(BP), BX
- ADDQ BX, AX
- MOVQ AX, 480(BP)
- MOVQ $0x90befffa23631e28, DX
- ADDQ AX, R11
- MOVQ R8, AX
- ADDQ DX, R11
- MOVQ R8, CX
- RORQ $0x0e, AX
- MOVQ R8, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R8, CX
- RORQ $0x29, DX
- ANDQ R9, CX
- XORQ AX, DX
- MOVQ R8, AX
- NOTQ AX
- ADDQ DX, R11
- ANDQ R10, AX
- XORQ CX, AX
- ADDQ R11, AX
- MOVQ R12, DI
- MOVQ R14, BX
- RORQ $0x1c, DI
- MOVQ R12, DX
- ANDQ R13, BX
- RORQ $0x22, DX
- MOVQ R12, CX
- ANDQ R14, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R12, DX
- MOVQ R13, CX
- RORQ $0x27, DX
- ANDQ R12, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R11
- ADDQ AX, R15
- ADDQ AX, R11
- MOVQ 472(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 368(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 432(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 360(BP), BX
- ADDQ BX, AX
- MOVQ AX, 488(BP)
- MOVQ $0xa4506cebde82bde9, DX
- ADDQ AX, R10
- MOVQ R15, AX
- ADDQ DX, R10
- MOVQ R15, CX
- RORQ $0x0e, AX
- MOVQ R15, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R15, CX
- RORQ $0x29, DX
- ANDQ R8, CX
- XORQ AX, DX
- MOVQ R15, AX
- NOTQ AX
- ADDQ DX, R10
- ANDQ R9, AX
- XORQ CX, AX
- ADDQ R10, AX
- MOVQ R11, DI
- MOVQ R13, BX
- RORQ $0x1c, DI
- MOVQ R11, DX
- ANDQ R12, BX
- RORQ $0x22, DX
- MOVQ R11, CX
- ANDQ R13, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R11, DX
- MOVQ R12, CX
- RORQ $0x27, DX
- ANDQ R11, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R10
- ADDQ AX, R14
- ADDQ AX, R10
- MOVQ 480(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 376(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 440(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 368(BP), BX
- ADDQ BX, AX
- MOVQ AX, 496(BP)
- MOVQ $0xbef9a3f7b2c67915, DX
- ADDQ AX, R9
- MOVQ R14, AX
- ADDQ DX, R9
- MOVQ R14, CX
- RORQ $0x0e, AX
- MOVQ R14, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R14, CX
- RORQ $0x29, DX
- ANDQ R15, CX
- XORQ AX, DX
- MOVQ R14, AX
- NOTQ AX
- ADDQ DX, R9
- ANDQ R8, AX
- XORQ CX, AX
- ADDQ R9, AX
- MOVQ R10, DI
- MOVQ R12, BX
- RORQ $0x1c, DI
- MOVQ R10, DX
- ANDQ R11, BX
- RORQ $0x22, DX
- MOVQ R10, CX
- ANDQ R12, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R10, DX
- MOVQ R11, CX
- RORQ $0x27, DX
- ANDQ R10, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R9
- ADDQ AX, R13
- ADDQ AX, R9
- MOVQ 488(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 384(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 448(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 376(BP), BX
- ADDQ BX, AX
- MOVQ AX, 504(BP)
- MOVQ $0xc67178f2e372532b, DX
- ADDQ AX, R8
- MOVQ R13, AX
- ADDQ DX, R8
- MOVQ R13, CX
- RORQ $0x0e, AX
- MOVQ R13, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R13, CX
- RORQ $0x29, DX
- ANDQ R14, CX
- XORQ AX, DX
- MOVQ R13, AX
- NOTQ AX
- ADDQ DX, R8
- ANDQ R15, AX
- XORQ CX, AX
- ADDQ R8, AX
- MOVQ R9, DI
- MOVQ R11, BX
- RORQ $0x1c, DI
- MOVQ R9, DX
- ANDQ R10, BX
- RORQ $0x22, DX
- MOVQ R9, CX
- ANDQ R11, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R9, DX
- MOVQ R10, CX
- RORQ $0x27, DX
- ANDQ R9, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R8
- ADDQ AX, R12
- ADDQ AX, R8
- MOVQ 496(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 392(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 456(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 384(BP), BX
- ADDQ BX, AX
- MOVQ AX, 512(BP)
- MOVQ $0xca273eceea26619c, DX
- ADDQ AX, R15
- MOVQ R12, AX
- ADDQ DX, R15
- MOVQ R12, CX
- RORQ $0x0e, AX
- MOVQ R12, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R12, CX
- RORQ $0x29, DX
- ANDQ R13, CX
- XORQ AX, DX
- MOVQ R12, AX
- NOTQ AX
- ADDQ DX, R15
- ANDQ R14, AX
- XORQ CX, AX
- ADDQ R15, AX
- MOVQ R8, DI
- MOVQ R10, BX
- RORQ $0x1c, DI
- MOVQ R8, DX
- ANDQ R9, BX
- RORQ $0x22, DX
- MOVQ R8, CX
- ANDQ R10, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R8, DX
- MOVQ R9, CX
- RORQ $0x27, DX
- ANDQ R8, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R15
- ADDQ AX, R11
- ADDQ AX, R15
- MOVQ 504(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 400(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 464(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 392(BP), BX
- ADDQ BX, AX
- MOVQ AX, 520(BP)
- MOVQ $0xd186b8c721c0c207, DX
- ADDQ AX, R14
- MOVQ R11, AX
- ADDQ DX, R14
- MOVQ R11, CX
- RORQ $0x0e, AX
- MOVQ R11, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R11, CX
- RORQ $0x29, DX
- ANDQ R12, CX
- XORQ AX, DX
- MOVQ R11, AX
- NOTQ AX
- ADDQ DX, R14
- ANDQ R13, AX
- XORQ CX, AX
- ADDQ R14, AX
- MOVQ R15, DI
- MOVQ R9, BX
- RORQ $0x1c, DI
- MOVQ R15, DX
- ANDQ R8, BX
- RORQ $0x22, DX
- MOVQ R15, CX
- ANDQ R9, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R15, DX
- MOVQ R8, CX
- RORQ $0x27, DX
- ANDQ R15, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R14
- ADDQ AX, R10
- ADDQ AX, R14
- MOVQ 512(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 408(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 472(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 400(BP), BX
- ADDQ BX, AX
- MOVQ AX, 528(BP)
- MOVQ $0xeada7dd6cde0eb1e, DX
- ADDQ AX, R13
- MOVQ R10, AX
- ADDQ DX, R13
- MOVQ R10, CX
- RORQ $0x0e, AX
- MOVQ R10, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R10, CX
- RORQ $0x29, DX
- ANDQ R11, CX
- XORQ AX, DX
- MOVQ R10, AX
- NOTQ AX
- ADDQ DX, R13
- ANDQ R12, AX
- XORQ CX, AX
- ADDQ R13, AX
- MOVQ R14, DI
- MOVQ R8, BX
- RORQ $0x1c, DI
- MOVQ R14, DX
- ANDQ R15, BX
- RORQ $0x22, DX
- MOVQ R14, CX
- ANDQ R8, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R14, DX
- MOVQ R15, CX
- RORQ $0x27, DX
- ANDQ R14, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R13
- ADDQ AX, R9
- ADDQ AX, R13
- MOVQ 520(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 416(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 480(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 408(BP), BX
- ADDQ BX, AX
- MOVQ AX, 536(BP)
- MOVQ $0xf57d4f7fee6ed178, DX
- ADDQ AX, R12
- MOVQ R9, AX
- ADDQ DX, R12
- MOVQ R9, CX
- RORQ $0x0e, AX
- MOVQ R9, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R9, CX
- RORQ $0x29, DX
- ANDQ R10, CX
- XORQ AX, DX
- MOVQ R9, AX
- NOTQ AX
- ADDQ DX, R12
- ANDQ R11, AX
- XORQ CX, AX
- ADDQ R12, AX
- MOVQ R13, DI
- MOVQ R15, BX
- RORQ $0x1c, DI
- MOVQ R13, DX
- ANDQ R14, BX
- RORQ $0x22, DX
- MOVQ R13, CX
- ANDQ R15, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R13, DX
- MOVQ R14, CX
- RORQ $0x27, DX
- ANDQ R13, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R12
- ADDQ AX, R8
- ADDQ AX, R12
- MOVQ 528(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 424(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 488(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 416(BP), BX
- ADDQ BX, AX
- MOVQ AX, 544(BP)
- MOVQ $0x06f067aa72176fba, DX
- ADDQ AX, R11
- MOVQ R8, AX
- ADDQ DX, R11
- MOVQ R8, CX
- RORQ $0x0e, AX
- MOVQ R8, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R8, CX
- RORQ $0x29, DX
- ANDQ R9, CX
- XORQ AX, DX
- MOVQ R8, AX
- NOTQ AX
- ADDQ DX, R11
- ANDQ R10, AX
- XORQ CX, AX
- ADDQ R11, AX
- MOVQ R12, DI
- MOVQ R14, BX
- RORQ $0x1c, DI
- MOVQ R12, DX
- ANDQ R13, BX
- RORQ $0x22, DX
- MOVQ R12, CX
- ANDQ R14, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R12, DX
- MOVQ R13, CX
- RORQ $0x27, DX
- ANDQ R12, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R11
- ADDQ AX, R15
- ADDQ AX, R11
- MOVQ 536(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 432(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 496(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 424(BP), BX
- ADDQ BX, AX
- MOVQ AX, 552(BP)
- MOVQ $0x0a637dc5a2c898a6, DX
- ADDQ AX, R10
- MOVQ R15, AX
- ADDQ DX, R10
- MOVQ R15, CX
- RORQ $0x0e, AX
- MOVQ R15, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R15, CX
- RORQ $0x29, DX
- ANDQ R8, CX
- XORQ AX, DX
- MOVQ R15, AX
- NOTQ AX
- ADDQ DX, R10
- ANDQ R9, AX
- XORQ CX, AX
- ADDQ R10, AX
- MOVQ R11, DI
- MOVQ R13, BX
- RORQ $0x1c, DI
- MOVQ R11, DX
- ANDQ R12, BX
- RORQ $0x22, DX
- MOVQ R11, CX
- ANDQ R13, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R11, DX
- MOVQ R12, CX
- RORQ $0x27, DX
- ANDQ R11, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R10
- ADDQ AX, R14
- ADDQ AX, R10
- MOVQ 544(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 440(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 504(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 432(BP), BX
- ADDQ BX, AX
- MOVQ AX, 560(BP)
- MOVQ $0x113f9804bef90dae, DX
- ADDQ AX, R9
- MOVQ R14, AX
- ADDQ DX, R9
- MOVQ R14, CX
- RORQ $0x0e, AX
- MOVQ R14, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R14, CX
- RORQ $0x29, DX
- ANDQ R15, CX
- XORQ AX, DX
- MOVQ R14, AX
- NOTQ AX
- ADDQ DX, R9
- ANDQ R8, AX
- XORQ CX, AX
- ADDQ R9, AX
- MOVQ R10, DI
- MOVQ R12, BX
- RORQ $0x1c, DI
- MOVQ R10, DX
- ANDQ R11, BX
- RORQ $0x22, DX
- MOVQ R10, CX
- ANDQ R12, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R10, DX
- MOVQ R11, CX
- RORQ $0x27, DX
- ANDQ R10, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R9
- ADDQ AX, R13
- ADDQ AX, R9
- MOVQ 552(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 448(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 512(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 440(BP), BX
- ADDQ BX, AX
- MOVQ AX, 568(BP)
- MOVQ $0x1b710b35131c471b, DX
- ADDQ AX, R8
- MOVQ R13, AX
- ADDQ DX, R8
- MOVQ R13, CX
- RORQ $0x0e, AX
- MOVQ R13, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R13, CX
- RORQ $0x29, DX
- ANDQ R14, CX
- XORQ AX, DX
- MOVQ R13, AX
- NOTQ AX
- ADDQ DX, R8
- ANDQ R15, AX
- XORQ CX, AX
- ADDQ R8, AX
- MOVQ R9, DI
- MOVQ R11, BX
- RORQ $0x1c, DI
- MOVQ R9, DX
- ANDQ R10, BX
- RORQ $0x22, DX
- MOVQ R9, CX
- ANDQ R11, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R9, DX
- MOVQ R10, CX
- RORQ $0x27, DX
- ANDQ R9, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R8
- ADDQ AX, R12
- ADDQ AX, R8
- MOVQ 560(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 456(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 520(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 448(BP), BX
- ADDQ BX, AX
- MOVQ AX, 576(BP)
- MOVQ $0x28db77f523047d84, DX
- ADDQ AX, R15
- MOVQ R12, AX
- ADDQ DX, R15
- MOVQ R12, CX
- RORQ $0x0e, AX
- MOVQ R12, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R12, CX
- RORQ $0x29, DX
- ANDQ R13, CX
- XORQ AX, DX
- MOVQ R12, AX
- NOTQ AX
- ADDQ DX, R15
- ANDQ R14, AX
- XORQ CX, AX
- ADDQ R15, AX
- MOVQ R8, DI
- MOVQ R10, BX
- RORQ $0x1c, DI
- MOVQ R8, DX
- ANDQ R9, BX
- RORQ $0x22, DX
- MOVQ R8, CX
- ANDQ R10, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R8, DX
- MOVQ R9, CX
- RORQ $0x27, DX
- ANDQ R8, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R15
- ADDQ AX, R11
- ADDQ AX, R15
- MOVQ 568(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 464(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 528(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 456(BP), BX
- ADDQ BX, AX
- MOVQ AX, 584(BP)
- MOVQ $0x32caab7b40c72493, DX
- ADDQ AX, R14
- MOVQ R11, AX
- ADDQ DX, R14
- MOVQ R11, CX
- RORQ $0x0e, AX
- MOVQ R11, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R11, CX
- RORQ $0x29, DX
- ANDQ R12, CX
- XORQ AX, DX
- MOVQ R11, AX
- NOTQ AX
- ADDQ DX, R14
- ANDQ R13, AX
- XORQ CX, AX
- ADDQ R14, AX
- MOVQ R15, DI
- MOVQ R9, BX
- RORQ $0x1c, DI
- MOVQ R15, DX
- ANDQ R8, BX
- RORQ $0x22, DX
- MOVQ R15, CX
- ANDQ R9, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R15, DX
- MOVQ R8, CX
- RORQ $0x27, DX
- ANDQ R15, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R14
- ADDQ AX, R10
- ADDQ AX, R14
- MOVQ 576(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 472(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 536(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 464(BP), BX
- ADDQ BX, AX
- MOVQ AX, 592(BP)
- MOVQ $0x3c9ebe0a15c9bebc, DX
- ADDQ AX, R13
- MOVQ R10, AX
- ADDQ DX, R13
- MOVQ R10, CX
- RORQ $0x0e, AX
- MOVQ R10, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R10, CX
- RORQ $0x29, DX
- ANDQ R11, CX
- XORQ AX, DX
- MOVQ R10, AX
- NOTQ AX
- ADDQ DX, R13
- ANDQ R12, AX
- XORQ CX, AX
- ADDQ R13, AX
- MOVQ R14, DI
- MOVQ R8, BX
- RORQ $0x1c, DI
- MOVQ R14, DX
- ANDQ R15, BX
- RORQ $0x22, DX
- MOVQ R14, CX
- ANDQ R8, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R14, DX
- MOVQ R15, CX
- RORQ $0x27, DX
- ANDQ R14, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R13
- ADDQ AX, R9
- ADDQ AX, R13
- MOVQ 584(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 480(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 544(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 472(BP), BX
- ADDQ BX, AX
- MOVQ AX, 600(BP)
- MOVQ $0x431d67c49c100d4c, DX
- ADDQ AX, R12
- MOVQ R9, AX
- ADDQ DX, R12
- MOVQ R9, CX
- RORQ $0x0e, AX
- MOVQ R9, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R9, CX
- RORQ $0x29, DX
- ANDQ R10, CX
- XORQ AX, DX
- MOVQ R9, AX
- NOTQ AX
- ADDQ DX, R12
- ANDQ R11, AX
- XORQ CX, AX
- ADDQ R12, AX
- MOVQ R13, DI
- MOVQ R15, BX
- RORQ $0x1c, DI
- MOVQ R13, DX
- ANDQ R14, BX
- RORQ $0x22, DX
- MOVQ R13, CX
- ANDQ R15, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R13, DX
- MOVQ R14, CX
- RORQ $0x27, DX
- ANDQ R13, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R12
- ADDQ AX, R8
- ADDQ AX, R12
- MOVQ 592(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 488(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 552(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 480(BP), BX
- ADDQ BX, AX
- MOVQ AX, 608(BP)
- MOVQ $0x4cc5d4becb3e42b6, DX
- ADDQ AX, R11
- MOVQ R8, AX
- ADDQ DX, R11
- MOVQ R8, CX
- RORQ $0x0e, AX
- MOVQ R8, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R8, CX
- RORQ $0x29, DX
- ANDQ R9, CX
- XORQ AX, DX
- MOVQ R8, AX
- NOTQ AX
- ADDQ DX, R11
- ANDQ R10, AX
- XORQ CX, AX
- ADDQ R11, AX
- MOVQ R12, DI
- MOVQ R14, BX
- RORQ $0x1c, DI
- MOVQ R12, DX
- ANDQ R13, BX
- RORQ $0x22, DX
- MOVQ R12, CX
- ANDQ R14, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R12, DX
- MOVQ R13, CX
- RORQ $0x27, DX
- ANDQ R12, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R11
- ADDQ AX, R15
- ADDQ AX, R11
- MOVQ 600(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 496(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 560(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 488(BP), BX
- ADDQ BX, AX
- MOVQ AX, 616(BP)
- MOVQ $0x597f299cfc657e2a, DX
- ADDQ AX, R10
- MOVQ R15, AX
- ADDQ DX, R10
- MOVQ R15, CX
- RORQ $0x0e, AX
- MOVQ R15, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R15, CX
- RORQ $0x29, DX
- ANDQ R8, CX
- XORQ AX, DX
- MOVQ R15, AX
- NOTQ AX
- ADDQ DX, R10
- ANDQ R9, AX
- XORQ CX, AX
- ADDQ R10, AX
- MOVQ R11, DI
- MOVQ R13, BX
- RORQ $0x1c, DI
- MOVQ R11, DX
- ANDQ R12, BX
- RORQ $0x22, DX
- MOVQ R11, CX
- ANDQ R13, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R11, DX
- MOVQ R12, CX
- RORQ $0x27, DX
- ANDQ R11, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R10
- ADDQ AX, R14
- ADDQ AX, R10
- MOVQ 608(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 504(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 568(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 496(BP), BX
- ADDQ BX, AX
- MOVQ AX, 624(BP)
- MOVQ $0x5fcb6fab3ad6faec, DX
- ADDQ AX, R9
- MOVQ R14, AX
- ADDQ DX, R9
- MOVQ R14, CX
- RORQ $0x0e, AX
- MOVQ R14, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R14, CX
- RORQ $0x29, DX
- ANDQ R15, CX
- XORQ AX, DX
- MOVQ R14, AX
- NOTQ AX
- ADDQ DX, R9
- ANDQ R8, AX
- XORQ CX, AX
- ADDQ R9, AX
- MOVQ R10, DI
- MOVQ R12, BX
- RORQ $0x1c, DI
- MOVQ R10, DX
- ANDQ R11, BX
- RORQ $0x22, DX
- MOVQ R10, CX
- ANDQ R12, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R10, DX
- MOVQ R11, CX
- RORQ $0x27, DX
- ANDQ R10, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R9
- ADDQ AX, R13
- ADDQ AX, R9
- MOVQ 616(BP), AX
- MOVQ AX, CX
- RORQ $0x13, AX
- MOVQ CX, DX
- RORQ $0x3d, CX
- SHRQ $0x06, DX
- MOVQ 512(BP), BX
- XORQ CX, AX
- MOVQ BX, CX
- XORQ DX, AX
- RORQ $0x01, BX
- MOVQ CX, DX
- SHRQ $0x07, DX
- RORQ $0x08, CX
- ADDQ 576(BP), AX
- XORQ CX, BX
- XORQ DX, BX
- ADDQ 504(BP), BX
- ADDQ BX, AX
- MOVQ AX, 632(BP)
- MOVQ $0x6c44198c4a475817, DX
- ADDQ AX, R8
- MOVQ R13, AX
- ADDQ DX, R8
- MOVQ R13, CX
- RORQ $0x0e, AX
- MOVQ R13, DX
- RORQ $0x12, CX
- XORQ CX, AX
- MOVQ R13, CX
- RORQ $0x29, DX
- ANDQ R14, CX
- XORQ AX, DX
- MOVQ R13, AX
- NOTQ AX
- ADDQ DX, R8
- ANDQ R15, AX
- XORQ CX, AX
- ADDQ R8, AX
- MOVQ R9, DI
- MOVQ R11, BX
- RORQ $0x1c, DI
- MOVQ R9, DX
- ANDQ R10, BX
- RORQ $0x22, DX
- MOVQ R9, CX
- ANDQ R11, CX
- XORQ DX, DI
- XORQ CX, BX
- MOVQ R9, DX
- MOVQ R10, CX
- RORQ $0x27, DX
- ANDQ R9, CX
- XORQ CX, BX
- XORQ DX, DI
- ADDQ DI, BX
- MOVQ BX, R8
- ADDQ AX, R12
- ADDQ AX, R8
- MOVQ dig+0(FP), BP
- ADDQ (BP), R8
- MOVQ R8, (BP)
- ADDQ 8(BP), R9
- MOVQ R9, 8(BP)
- ADDQ 16(BP), R10
- MOVQ R10, 16(BP)
- ADDQ 24(BP), R11
- MOVQ R11, 24(BP)
- ADDQ 32(BP), R12
- MOVQ R12, 32(BP)
- ADDQ 40(BP), R13
- MOVQ R13, 40(BP)
- ADDQ 48(BP), R14
- MOVQ R14, 48(BP)
- ADDQ 56(BP), R15
- MOVQ R15, 56(BP)
- ADDQ $0x80, SI
- CMPQ SI, 640(SP)
- JB loop
-
-end:
- RET
-
-DATA PSHUFFLE_BYTE_FLIP_MASK<>+0(SB)/8, $0x0001020304050607
-DATA PSHUFFLE_BYTE_FLIP_MASK<>+8(SB)/8, $0x08090a0b0c0d0e0f
-DATA PSHUFFLE_BYTE_FLIP_MASK<>+16(SB)/8, $0x1011121314151617
-DATA PSHUFFLE_BYTE_FLIP_MASK<>+24(SB)/8, $0x18191a1b1c1d1e1f
-GLOBL PSHUFFLE_BYTE_FLIP_MASK<>(SB), RODATA|NOPTR, $32
-
// func blockAVX2(dig *Digest, p []byte)
// Requires: AVX, AVX2, BMI2
TEXT ·blockAVX2(SB), NOSPLIT, $56-32
VZEROUPPER
RET
+DATA PSHUFFLE_BYTE_FLIP_MASK<>+0(SB)/8, $0x0001020304050607
+DATA PSHUFFLE_BYTE_FLIP_MASK<>+8(SB)/8, $0x08090a0b0c0d0e0f
+DATA PSHUFFLE_BYTE_FLIP_MASK<>+16(SB)/8, $0x1011121314151617
+DATA PSHUFFLE_BYTE_FLIP_MASK<>+24(SB)/8, $0x18191a1b1c1d1e1f
+GLOBL PSHUFFLE_BYTE_FLIP_MASK<>(SB), RODATA|NOPTR, $32
+
DATA MASK_YMM_LO<>+0(SB)/8, $0x0000000000000000
DATA MASK_YMM_LO<>+8(SB)/8, $0x0000000000000000
DATA MASK_YMM_LO<>+16(SB)/8, $0xffffffffffffffff
func main() {
Package("crypto/sha1")
ConstraintExpr("!purego")
- blockAMD64()
blockAVX2()
blockSHANI()
Generate()
}
-func LOAD(index int) {
- MOVL(Mem{Base: SI}.Offset(index*4), R10L)
- BSWAPL(R10L)
- MOVL(R10L, Mem{Base: SP}.Offset(index*4))
-}
-
-func SHUFFLE(index int) {
- MOVL(Mem{Base: SP}.Offset(((index)&0xf)*4), R10L)
- XORL(Mem{Base: SP}.Offset(((index-3)&0xf)*4), R10L)
- XORL(Mem{Base: SP}.Offset(((index-8)&0xf)*4), R10L)
- XORL(Mem{Base: SP}.Offset(((index-14)&0xf)*4), R10L)
- ROLL(Imm(1), R10L)
- MOVL(R10L, Mem{Base: SP}.Offset(((index)&0xf)*4))
-}
-
-func FUNC1(a, b, c, d, e GPPhysical) {
- MOVL(d, R9L)
- XORL(c, R9L)
- ANDL(b, R9L)
- XORL(d, R9L)
-}
-
-func FUNC2(a, b, c, d, e GPPhysical) {
- MOVL(b, R9L)
- XORL(c, R9L)
- XORL(d, R9L)
-}
-
-func FUNC3(a, b, c, d, e GPPhysical) {
- MOVL(b, R8L)
- ORL(c, R8L)
- ANDL(d, R8L)
- MOVL(b, R9L)
- ANDL(c, R9L)
- ORL(R8L, R9L)
-}
-
-func FUNC4(a, b, c, d, e GPPhysical) {
- FUNC2(a, b, c, d, e)
-}
-
-func MIX(a, b, c, d, e GPPhysical, konst int) {
- ROLL(Imm(30), b)
- ADDL(R9L, e)
- MOVL(a, R8L)
- ROLL(Imm(5), R8L)
- LEAL(Mem{Base: e, Index: R10L, Scale: 1}.Offset(konst), e)
- ADDL(R8L, e)
-}
-
-func ROUND1(a, b, c, d, e GPPhysical, index int) {
- LOAD(index)
- FUNC1(a, b, c, d, e)
- MIX(a, b, c, d, e, 0x5A827999)
-}
-
-func ROUND1x(a, b, c, d, e GPPhysical, index int) {
- SHUFFLE(index)
- FUNC1(a, b, c, d, e)
- MIX(a, b, c, d, e, 0x5A827999)
-}
-
-func ROUND2(a, b, c, d, e GPPhysical, index int) {
- SHUFFLE(index)
- FUNC2(a, b, c, d, e)
- MIX(a, b, c, d, e, 0x6ED9EBA1)
-}
-
-func ROUND3(a, b, c, d, e GPPhysical, index int) {
- SHUFFLE(index)
- FUNC3(a, b, c, d, e)
- MIX(a, b, c, d, e, 0x8F1BBCDC)
-}
-
-func ROUND4(a, b, c, d, e GPPhysical, index int) {
- SHUFFLE(index)
- FUNC4(a, b, c, d, e)
- MIX(a, b, c, d, e, 0xCA62C1D6)
-}
-
-func blockAMD64() {
- Implement("blockAMD64")
- Attributes(NOSPLIT)
- AllocLocal(64)
-
- Load(Param("dig"), RBP)
- Load(Param("p").Base(), RSI)
- Load(Param("p").Len(), RDX)
- SHRQ(Imm(6), RDX)
- SHLQ(Imm(6), RDX)
-
- LEAQ(Mem{Base: SI, Index: DX, Scale: 1}, RDI)
- MOVL(Mem{Base: BP}.Offset(0*4), EAX)
- MOVL(Mem{Base: BP}.Offset(1*4), EBX)
- MOVL(Mem{Base: BP}.Offset(2*4), ECX)
- MOVL(Mem{Base: BP}.Offset(3*4), EDX)
- MOVL(Mem{Base: BP}.Offset(4*4), EBP)
-
- CMPQ(RSI, RDI)
- JEQ(LabelRef("end"))
-
- loop_amd64()
- end()
-}
-
-func loop_amd64() {
- Label("loop")
- MOVL(EAX, R11L)
- MOVL(EBX, R12L)
- MOVL(ECX, R13L)
- MOVL(EDX, R14L)
- MOVL(EBP, R15L)
-
- ROUND1(EAX, EBX, ECX, EDX, EBP, 0)
- ROUND1(EBP, EAX, EBX, ECX, EDX, 1)
- ROUND1(EDX, EBP, EAX, EBX, ECX, 2)
- ROUND1(ECX, EDX, EBP, EAX, EBX, 3)
- ROUND1(EBX, ECX, EDX, EBP, EAX, 4)
- ROUND1(EAX, EBX, ECX, EDX, EBP, 5)
- ROUND1(EBP, EAX, EBX, ECX, EDX, 6)
- ROUND1(EDX, EBP, EAX, EBX, ECX, 7)
- ROUND1(ECX, EDX, EBP, EAX, EBX, 8)
- ROUND1(EBX, ECX, EDX, EBP, EAX, 9)
- ROUND1(EAX, EBX, ECX, EDX, EBP, 10)
- ROUND1(EBP, EAX, EBX, ECX, EDX, 11)
- ROUND1(EDX, EBP, EAX, EBX, ECX, 12)
- ROUND1(ECX, EDX, EBP, EAX, EBX, 13)
- ROUND1(EBX, ECX, EDX, EBP, EAX, 14)
- ROUND1(EAX, EBX, ECX, EDX, EBP, 15)
-
- ROUND1x(EBP, EAX, EBX, ECX, EDX, 16)
- ROUND1x(EDX, EBP, EAX, EBX, ECX, 17)
- ROUND1x(ECX, EDX, EBP, EAX, EBX, 18)
- ROUND1x(EBX, ECX, EDX, EBP, EAX, 19)
-
- ROUND2(EAX, EBX, ECX, EDX, EBP, 20)
- ROUND2(EBP, EAX, EBX, ECX, EDX, 21)
- ROUND2(EDX, EBP, EAX, EBX, ECX, 22)
- ROUND2(ECX, EDX, EBP, EAX, EBX, 23)
- ROUND2(EBX, ECX, EDX, EBP, EAX, 24)
- ROUND2(EAX, EBX, ECX, EDX, EBP, 25)
- ROUND2(EBP, EAX, EBX, ECX, EDX, 26)
- ROUND2(EDX, EBP, EAX, EBX, ECX, 27)
- ROUND2(ECX, EDX, EBP, EAX, EBX, 28)
- ROUND2(EBX, ECX, EDX, EBP, EAX, 29)
- ROUND2(EAX, EBX, ECX, EDX, EBP, 30)
- ROUND2(EBP, EAX, EBX, ECX, EDX, 31)
- ROUND2(EDX, EBP, EAX, EBX, ECX, 32)
- ROUND2(ECX, EDX, EBP, EAX, EBX, 33)
- ROUND2(EBX, ECX, EDX, EBP, EAX, 34)
- ROUND2(EAX, EBX, ECX, EDX, EBP, 35)
- ROUND2(EBP, EAX, EBX, ECX, EDX, 36)
- ROUND2(EDX, EBP, EAX, EBX, ECX, 37)
- ROUND2(ECX, EDX, EBP, EAX, EBX, 38)
- ROUND2(EBX, ECX, EDX, EBP, EAX, 39)
-
- ROUND3(EAX, EBX, ECX, EDX, EBP, 40)
- ROUND3(EBP, EAX, EBX, ECX, EDX, 41)
- ROUND3(EDX, EBP, EAX, EBX, ECX, 42)
- ROUND3(ECX, EDX, EBP, EAX, EBX, 43)
- ROUND3(EBX, ECX, EDX, EBP, EAX, 44)
- ROUND3(EAX, EBX, ECX, EDX, EBP, 45)
- ROUND3(EBP, EAX, EBX, ECX, EDX, 46)
- ROUND3(EDX, EBP, EAX, EBX, ECX, 47)
- ROUND3(ECX, EDX, EBP, EAX, EBX, 48)
- ROUND3(EBX, ECX, EDX, EBP, EAX, 49)
- ROUND3(EAX, EBX, ECX, EDX, EBP, 50)
- ROUND3(EBP, EAX, EBX, ECX, EDX, 51)
- ROUND3(EDX, EBP, EAX, EBX, ECX, 52)
- ROUND3(ECX, EDX, EBP, EAX, EBX, 53)
- ROUND3(EBX, ECX, EDX, EBP, EAX, 54)
- ROUND3(EAX, EBX, ECX, EDX, EBP, 55)
- ROUND3(EBP, EAX, EBX, ECX, EDX, 56)
- ROUND3(EDX, EBP, EAX, EBX, ECX, 57)
- ROUND3(ECX, EDX, EBP, EAX, EBX, 58)
- ROUND3(EBX, ECX, EDX, EBP, EAX, 59)
-
- ROUND4(EAX, EBX, ECX, EDX, EBP, 60)
- ROUND4(EBP, EAX, EBX, ECX, EDX, 61)
- ROUND4(EDX, EBP, EAX, EBX, ECX, 62)
- ROUND4(ECX, EDX, EBP, EAX, EBX, 63)
- ROUND4(EBX, ECX, EDX, EBP, EAX, 64)
- ROUND4(EAX, EBX, ECX, EDX, EBP, 65)
- ROUND4(EBP, EAX, EBX, ECX, EDX, 66)
- ROUND4(EDX, EBP, EAX, EBX, ECX, 67)
- ROUND4(ECX, EDX, EBP, EAX, EBX, 68)
- ROUND4(EBX, ECX, EDX, EBP, EAX, 69)
- ROUND4(EAX, EBX, ECX, EDX, EBP, 70)
- ROUND4(EBP, EAX, EBX, ECX, EDX, 71)
- ROUND4(EDX, EBP, EAX, EBX, ECX, 72)
- ROUND4(ECX, EDX, EBP, EAX, EBX, 73)
- ROUND4(EBX, ECX, EDX, EBP, EAX, 74)
- ROUND4(EAX, EBX, ECX, EDX, EBP, 75)
- ROUND4(EBP, EAX, EBX, ECX, EDX, 76)
- ROUND4(EDX, EBP, EAX, EBX, ECX, 77)
- ROUND4(ECX, EDX, EBP, EAX, EBX, 78)
- ROUND4(EBX, ECX, EDX, EBP, EAX, 79)
-
- ADDL(R11L, EAX)
- ADDL(R12L, EBX)
- ADDL(R13L, ECX)
- ADDL(R14L, EDX)
- ADDL(R15L, EBP)
-
- ADDQ(Imm(64), RSI)
- CMPQ(RSI, RDI)
- JB(LabelRef("loop"))
-}
-
-func end() {
- Label("end")
- Load(Param("dig"), RDI)
- MOVL(EAX, Mem{Base: DI}.Offset(0*4))
- MOVL(EBX, Mem{Base: DI}.Offset(1*4))
- MOVL(ECX, Mem{Base: DI}.Offset(2*4))
- MOVL(EDX, Mem{Base: DI}.Offset(3*4))
- MOVL(EBP, Mem{Base: DI}.Offset(4*4))
- RET()
-}
-
// This is the implementation using AVX2, BMI1 and BMI2. It is based on:
// "SHA-1 implementation with Intel(R) AVX2 instruction set extensions"
// From http://software.intel.com/en-us/articles
//go:noescape
func blockAVX2(dig *digest, p []byte)
-//go:noescape
-func blockAMD64(dig *digest, p []byte)
-
//go:noescape
func blockSHANI(dig *digest, p []byte)
if useSHANI {
blockSHANI(dig, p)
} else if useAVX2 && len(p) >= 256 {
- // blockAVX2 calculates sha1 for 2 block per iteration
- // it also interleaves precalculation for next block.
- // So it may read up-to 192 bytes past end of p
- // We may add checks inside blockAVX2, but this will
- // just turn it into a copy of blockAMD64,
- // so call it directly, instead.
+ // blockAVX2 calculates sha1 for 2 block per iteration and also
+ // interleaves precalculation for next block. So it may read up-to 192
+ // bytes past end of p. We could add checks inside blockAVX2, but this
+ // would just turn it into a copy of the old pre-AVX2 amd64 SHA1
+ // assembly implementation, so just call blockGeneric instead.
safeLen := len(p) - 128
if safeLen%128 != 0 {
safeLen -= 64
}
blockAVX2(dig, p[:safeLen])
- blockAMD64(dig, p[safeLen:])
+ blockGeneric(dig, p[safeLen:])
} else {
- blockAMD64(dig, p)
+ blockGeneric(dig, p)
}
}
#include "textflag.h"
-// func blockAMD64(dig *digest, p []byte)
-TEXT ·blockAMD64(SB), NOSPLIT, $64-32
- MOVQ dig+0(FP), BP
- MOVQ p_base+8(FP), SI
- MOVQ p_len+16(FP), DX
- SHRQ $0x06, DX
- SHLQ $0x06, DX
- LEAQ (SI)(DX*1), DI
- MOVL (BP), AX
- MOVL 4(BP), BX
- MOVL 8(BP), CX
- MOVL 12(BP), DX
- MOVL 16(BP), BP
- CMPQ SI, DI
- JEQ end
-
-loop:
- MOVL AX, R11
- MOVL BX, R12
- MOVL CX, R13
- MOVL DX, R14
- MOVL BP, R15
- MOVL (SI), R10
- BSWAPL R10
- MOVL R10, (SP)
- MOVL DX, R9
- XORL CX, R9
- ANDL BX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 1518500249(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 4(SI), R10
- BSWAPL R10
- MOVL R10, 4(SP)
- MOVL CX, R9
- XORL BX, R9
- ANDL AX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 1518500249(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 8(SI), R10
- BSWAPL R10
- MOVL R10, 8(SP)
- MOVL BX, R9
- XORL AX, R9
- ANDL BP, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 1518500249(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 12(SI), R10
- BSWAPL R10
- MOVL R10, 12(SP)
- MOVL AX, R9
- XORL BP, R9
- ANDL DX, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 1518500249(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 16(SI), R10
- BSWAPL R10
- MOVL R10, 16(SP)
- MOVL BP, R9
- XORL DX, R9
- ANDL CX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 1518500249(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 20(SI), R10
- BSWAPL R10
- MOVL R10, 20(SP)
- MOVL DX, R9
- XORL CX, R9
- ANDL BX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 1518500249(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 24(SI), R10
- BSWAPL R10
- MOVL R10, 24(SP)
- MOVL CX, R9
- XORL BX, R9
- ANDL AX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 1518500249(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 28(SI), R10
- BSWAPL R10
- MOVL R10, 28(SP)
- MOVL BX, R9
- XORL AX, R9
- ANDL BP, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 1518500249(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 32(SI), R10
- BSWAPL R10
- MOVL R10, 32(SP)
- MOVL AX, R9
- XORL BP, R9
- ANDL DX, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 1518500249(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 36(SI), R10
- BSWAPL R10
- MOVL R10, 36(SP)
- MOVL BP, R9
- XORL DX, R9
- ANDL CX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 1518500249(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 40(SI), R10
- BSWAPL R10
- MOVL R10, 40(SP)
- MOVL DX, R9
- XORL CX, R9
- ANDL BX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 1518500249(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 44(SI), R10
- BSWAPL R10
- MOVL R10, 44(SP)
- MOVL CX, R9
- XORL BX, R9
- ANDL AX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 1518500249(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 48(SI), R10
- BSWAPL R10
- MOVL R10, 48(SP)
- MOVL BX, R9
- XORL AX, R9
- ANDL BP, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 1518500249(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 52(SI), R10
- BSWAPL R10
- MOVL R10, 52(SP)
- MOVL AX, R9
- XORL BP, R9
- ANDL DX, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 1518500249(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 56(SI), R10
- BSWAPL R10
- MOVL R10, 56(SP)
- MOVL BP, R9
- XORL DX, R9
- ANDL CX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 1518500249(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 60(SI), R10
- BSWAPL R10
- MOVL R10, 60(SP)
- MOVL DX, R9
- XORL CX, R9
- ANDL BX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 1518500249(BP)(R10*1), BP
- ADDL R8, BP
- MOVL (SP), R10
- XORL 52(SP), R10
- XORL 32(SP), R10
- XORL 8(SP), R10
- ROLL $0x01, R10
- MOVL R10, (SP)
- MOVL CX, R9
- XORL BX, R9
- ANDL AX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 1518500249(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 4(SP), R10
- XORL 56(SP), R10
- XORL 36(SP), R10
- XORL 12(SP), R10
- ROLL $0x01, R10
- MOVL R10, 4(SP)
- MOVL BX, R9
- XORL AX, R9
- ANDL BP, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 1518500249(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 8(SP), R10
- XORL 60(SP), R10
- XORL 40(SP), R10
- XORL 16(SP), R10
- ROLL $0x01, R10
- MOVL R10, 8(SP)
- MOVL AX, R9
- XORL BP, R9
- ANDL DX, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 1518500249(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 12(SP), R10
- XORL (SP), R10
- XORL 44(SP), R10
- XORL 20(SP), R10
- ROLL $0x01, R10
- MOVL R10, 12(SP)
- MOVL BP, R9
- XORL DX, R9
- ANDL CX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 1518500249(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 16(SP), R10
- XORL 4(SP), R10
- XORL 48(SP), R10
- XORL 24(SP), R10
- ROLL $0x01, R10
- MOVL R10, 16(SP)
- MOVL BX, R9
- XORL CX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 1859775393(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 20(SP), R10
- XORL 8(SP), R10
- XORL 52(SP), R10
- XORL 28(SP), R10
- ROLL $0x01, R10
- MOVL R10, 20(SP)
- MOVL AX, R9
- XORL BX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 1859775393(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 24(SP), R10
- XORL 12(SP), R10
- XORL 56(SP), R10
- XORL 32(SP), R10
- ROLL $0x01, R10
- MOVL R10, 24(SP)
- MOVL BP, R9
- XORL AX, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 1859775393(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 28(SP), R10
- XORL 16(SP), R10
- XORL 60(SP), R10
- XORL 36(SP), R10
- ROLL $0x01, R10
- MOVL R10, 28(SP)
- MOVL DX, R9
- XORL BP, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 1859775393(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 32(SP), R10
- XORL 20(SP), R10
- XORL (SP), R10
- XORL 40(SP), R10
- ROLL $0x01, R10
- MOVL R10, 32(SP)
- MOVL CX, R9
- XORL DX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 1859775393(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 36(SP), R10
- XORL 24(SP), R10
- XORL 4(SP), R10
- XORL 44(SP), R10
- ROLL $0x01, R10
- MOVL R10, 36(SP)
- MOVL BX, R9
- XORL CX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 1859775393(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 40(SP), R10
- XORL 28(SP), R10
- XORL 8(SP), R10
- XORL 48(SP), R10
- ROLL $0x01, R10
- MOVL R10, 40(SP)
- MOVL AX, R9
- XORL BX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 1859775393(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 44(SP), R10
- XORL 32(SP), R10
- XORL 12(SP), R10
- XORL 52(SP), R10
- ROLL $0x01, R10
- MOVL R10, 44(SP)
- MOVL BP, R9
- XORL AX, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 1859775393(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 48(SP), R10
- XORL 36(SP), R10
- XORL 16(SP), R10
- XORL 56(SP), R10
- ROLL $0x01, R10
- MOVL R10, 48(SP)
- MOVL DX, R9
- XORL BP, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 1859775393(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 52(SP), R10
- XORL 40(SP), R10
- XORL 20(SP), R10
- XORL 60(SP), R10
- ROLL $0x01, R10
- MOVL R10, 52(SP)
- MOVL CX, R9
- XORL DX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 1859775393(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 56(SP), R10
- XORL 44(SP), R10
- XORL 24(SP), R10
- XORL (SP), R10
- ROLL $0x01, R10
- MOVL R10, 56(SP)
- MOVL BX, R9
- XORL CX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 1859775393(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 60(SP), R10
- XORL 48(SP), R10
- XORL 28(SP), R10
- XORL 4(SP), R10
- ROLL $0x01, R10
- MOVL R10, 60(SP)
- MOVL AX, R9
- XORL BX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 1859775393(DX)(R10*1), DX
- ADDL R8, DX
- MOVL (SP), R10
- XORL 52(SP), R10
- XORL 32(SP), R10
- XORL 8(SP), R10
- ROLL $0x01, R10
- MOVL R10, (SP)
- MOVL BP, R9
- XORL AX, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 1859775393(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 4(SP), R10
- XORL 56(SP), R10
- XORL 36(SP), R10
- XORL 12(SP), R10
- ROLL $0x01, R10
- MOVL R10, 4(SP)
- MOVL DX, R9
- XORL BP, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 1859775393(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 8(SP), R10
- XORL 60(SP), R10
- XORL 40(SP), R10
- XORL 16(SP), R10
- ROLL $0x01, R10
- MOVL R10, 8(SP)
- MOVL CX, R9
- XORL DX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 1859775393(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 12(SP), R10
- XORL (SP), R10
- XORL 44(SP), R10
- XORL 20(SP), R10
- ROLL $0x01, R10
- MOVL R10, 12(SP)
- MOVL BX, R9
- XORL CX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 1859775393(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 16(SP), R10
- XORL 4(SP), R10
- XORL 48(SP), R10
- XORL 24(SP), R10
- ROLL $0x01, R10
- MOVL R10, 16(SP)
- MOVL AX, R9
- XORL BX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 1859775393(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 20(SP), R10
- XORL 8(SP), R10
- XORL 52(SP), R10
- XORL 28(SP), R10
- ROLL $0x01, R10
- MOVL R10, 20(SP)
- MOVL BP, R9
- XORL AX, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 1859775393(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 24(SP), R10
- XORL 12(SP), R10
- XORL 56(SP), R10
- XORL 32(SP), R10
- ROLL $0x01, R10
- MOVL R10, 24(SP)
- MOVL DX, R9
- XORL BP, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 1859775393(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 28(SP), R10
- XORL 16(SP), R10
- XORL 60(SP), R10
- XORL 36(SP), R10
- ROLL $0x01, R10
- MOVL R10, 28(SP)
- MOVL CX, R9
- XORL DX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 1859775393(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 32(SP), R10
- XORL 20(SP), R10
- XORL (SP), R10
- XORL 40(SP), R10
- ROLL $0x01, R10
- MOVL R10, 32(SP)
- MOVL BX, R8
- ORL CX, R8
- ANDL DX, R8
- MOVL BX, R9
- ANDL CX, R9
- ORL R8, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 2400959708(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 36(SP), R10
- XORL 24(SP), R10
- XORL 4(SP), R10
- XORL 44(SP), R10
- ROLL $0x01, R10
- MOVL R10, 36(SP)
- MOVL AX, R8
- ORL BX, R8
- ANDL CX, R8
- MOVL AX, R9
- ANDL BX, R9
- ORL R8, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 2400959708(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 40(SP), R10
- XORL 28(SP), R10
- XORL 8(SP), R10
- XORL 48(SP), R10
- ROLL $0x01, R10
- MOVL R10, 40(SP)
- MOVL BP, R8
- ORL AX, R8
- ANDL BX, R8
- MOVL BP, R9
- ANDL AX, R9
- ORL R8, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 2400959708(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 44(SP), R10
- XORL 32(SP), R10
- XORL 12(SP), R10
- XORL 52(SP), R10
- ROLL $0x01, R10
- MOVL R10, 44(SP)
- MOVL DX, R8
- ORL BP, R8
- ANDL AX, R8
- MOVL DX, R9
- ANDL BP, R9
- ORL R8, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 2400959708(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 48(SP), R10
- XORL 36(SP), R10
- XORL 16(SP), R10
- XORL 56(SP), R10
- ROLL $0x01, R10
- MOVL R10, 48(SP)
- MOVL CX, R8
- ORL DX, R8
- ANDL BP, R8
- MOVL CX, R9
- ANDL DX, R9
- ORL R8, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 2400959708(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 52(SP), R10
- XORL 40(SP), R10
- XORL 20(SP), R10
- XORL 60(SP), R10
- ROLL $0x01, R10
- MOVL R10, 52(SP)
- MOVL BX, R8
- ORL CX, R8
- ANDL DX, R8
- MOVL BX, R9
- ANDL CX, R9
- ORL R8, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 2400959708(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 56(SP), R10
- XORL 44(SP), R10
- XORL 24(SP), R10
- XORL (SP), R10
- ROLL $0x01, R10
- MOVL R10, 56(SP)
- MOVL AX, R8
- ORL BX, R8
- ANDL CX, R8
- MOVL AX, R9
- ANDL BX, R9
- ORL R8, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 2400959708(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 60(SP), R10
- XORL 48(SP), R10
- XORL 28(SP), R10
- XORL 4(SP), R10
- ROLL $0x01, R10
- MOVL R10, 60(SP)
- MOVL BP, R8
- ORL AX, R8
- ANDL BX, R8
- MOVL BP, R9
- ANDL AX, R9
- ORL R8, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 2400959708(CX)(R10*1), CX
- ADDL R8, CX
- MOVL (SP), R10
- XORL 52(SP), R10
- XORL 32(SP), R10
- XORL 8(SP), R10
- ROLL $0x01, R10
- MOVL R10, (SP)
- MOVL DX, R8
- ORL BP, R8
- ANDL AX, R8
- MOVL DX, R9
- ANDL BP, R9
- ORL R8, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 2400959708(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 4(SP), R10
- XORL 56(SP), R10
- XORL 36(SP), R10
- XORL 12(SP), R10
- ROLL $0x01, R10
- MOVL R10, 4(SP)
- MOVL CX, R8
- ORL DX, R8
- ANDL BP, R8
- MOVL CX, R9
- ANDL DX, R9
- ORL R8, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 2400959708(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 8(SP), R10
- XORL 60(SP), R10
- XORL 40(SP), R10
- XORL 16(SP), R10
- ROLL $0x01, R10
- MOVL R10, 8(SP)
- MOVL BX, R8
- ORL CX, R8
- ANDL DX, R8
- MOVL BX, R9
- ANDL CX, R9
- ORL R8, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 2400959708(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 12(SP), R10
- XORL (SP), R10
- XORL 44(SP), R10
- XORL 20(SP), R10
- ROLL $0x01, R10
- MOVL R10, 12(SP)
- MOVL AX, R8
- ORL BX, R8
- ANDL CX, R8
- MOVL AX, R9
- ANDL BX, R9
- ORL R8, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 2400959708(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 16(SP), R10
- XORL 4(SP), R10
- XORL 48(SP), R10
- XORL 24(SP), R10
- ROLL $0x01, R10
- MOVL R10, 16(SP)
- MOVL BP, R8
- ORL AX, R8
- ANDL BX, R8
- MOVL BP, R9
- ANDL AX, R9
- ORL R8, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 2400959708(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 20(SP), R10
- XORL 8(SP), R10
- XORL 52(SP), R10
- XORL 28(SP), R10
- ROLL $0x01, R10
- MOVL R10, 20(SP)
- MOVL DX, R8
- ORL BP, R8
- ANDL AX, R8
- MOVL DX, R9
- ANDL BP, R9
- ORL R8, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 2400959708(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 24(SP), R10
- XORL 12(SP), R10
- XORL 56(SP), R10
- XORL 32(SP), R10
- ROLL $0x01, R10
- MOVL R10, 24(SP)
- MOVL CX, R8
- ORL DX, R8
- ANDL BP, R8
- MOVL CX, R9
- ANDL DX, R9
- ORL R8, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 2400959708(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 28(SP), R10
- XORL 16(SP), R10
- XORL 60(SP), R10
- XORL 36(SP), R10
- ROLL $0x01, R10
- MOVL R10, 28(SP)
- MOVL BX, R8
- ORL CX, R8
- ANDL DX, R8
- MOVL BX, R9
- ANDL CX, R9
- ORL R8, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 2400959708(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 32(SP), R10
- XORL 20(SP), R10
- XORL (SP), R10
- XORL 40(SP), R10
- ROLL $0x01, R10
- MOVL R10, 32(SP)
- MOVL AX, R8
- ORL BX, R8
- ANDL CX, R8
- MOVL AX, R9
- ANDL BX, R9
- ORL R8, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 2400959708(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 36(SP), R10
- XORL 24(SP), R10
- XORL 4(SP), R10
- XORL 44(SP), R10
- ROLL $0x01, R10
- MOVL R10, 36(SP)
- MOVL BP, R8
- ORL AX, R8
- ANDL BX, R8
- MOVL BP, R9
- ANDL AX, R9
- ORL R8, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 2400959708(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 40(SP), R10
- XORL 28(SP), R10
- XORL 8(SP), R10
- XORL 48(SP), R10
- ROLL $0x01, R10
- MOVL R10, 40(SP)
- MOVL DX, R8
- ORL BP, R8
- ANDL AX, R8
- MOVL DX, R9
- ANDL BP, R9
- ORL R8, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 2400959708(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 44(SP), R10
- XORL 32(SP), R10
- XORL 12(SP), R10
- XORL 52(SP), R10
- ROLL $0x01, R10
- MOVL R10, 44(SP)
- MOVL CX, R8
- ORL DX, R8
- ANDL BP, R8
- MOVL CX, R9
- ANDL DX, R9
- ORL R8, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 2400959708(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 48(SP), R10
- XORL 36(SP), R10
- XORL 16(SP), R10
- XORL 56(SP), R10
- ROLL $0x01, R10
- MOVL R10, 48(SP)
- MOVL BX, R9
- XORL CX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 3395469782(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 52(SP), R10
- XORL 40(SP), R10
- XORL 20(SP), R10
- XORL 60(SP), R10
- ROLL $0x01, R10
- MOVL R10, 52(SP)
- MOVL AX, R9
- XORL BX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 3395469782(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 56(SP), R10
- XORL 44(SP), R10
- XORL 24(SP), R10
- XORL (SP), R10
- ROLL $0x01, R10
- MOVL R10, 56(SP)
- MOVL BP, R9
- XORL AX, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 3395469782(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 60(SP), R10
- XORL 48(SP), R10
- XORL 28(SP), R10
- XORL 4(SP), R10
- ROLL $0x01, R10
- MOVL R10, 60(SP)
- MOVL DX, R9
- XORL BP, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 3395469782(BX)(R10*1), BX
- ADDL R8, BX
- MOVL (SP), R10
- XORL 52(SP), R10
- XORL 32(SP), R10
- XORL 8(SP), R10
- ROLL $0x01, R10
- MOVL R10, (SP)
- MOVL CX, R9
- XORL DX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 3395469782(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 4(SP), R10
- XORL 56(SP), R10
- XORL 36(SP), R10
- XORL 12(SP), R10
- ROLL $0x01, R10
- MOVL R10, 4(SP)
- MOVL BX, R9
- XORL CX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 3395469782(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 8(SP), R10
- XORL 60(SP), R10
- XORL 40(SP), R10
- XORL 16(SP), R10
- ROLL $0x01, R10
- MOVL R10, 8(SP)
- MOVL AX, R9
- XORL BX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 3395469782(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 12(SP), R10
- XORL (SP), R10
- XORL 44(SP), R10
- XORL 20(SP), R10
- ROLL $0x01, R10
- MOVL R10, 12(SP)
- MOVL BP, R9
- XORL AX, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 3395469782(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 16(SP), R10
- XORL 4(SP), R10
- XORL 48(SP), R10
- XORL 24(SP), R10
- ROLL $0x01, R10
- MOVL R10, 16(SP)
- MOVL DX, R9
- XORL BP, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 3395469782(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 20(SP), R10
- XORL 8(SP), R10
- XORL 52(SP), R10
- XORL 28(SP), R10
- ROLL $0x01, R10
- MOVL R10, 20(SP)
- MOVL CX, R9
- XORL DX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 3395469782(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 24(SP), R10
- XORL 12(SP), R10
- XORL 56(SP), R10
- XORL 32(SP), R10
- ROLL $0x01, R10
- MOVL R10, 24(SP)
- MOVL BX, R9
- XORL CX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 3395469782(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 28(SP), R10
- XORL 16(SP), R10
- XORL 60(SP), R10
- XORL 36(SP), R10
- ROLL $0x01, R10
- MOVL R10, 28(SP)
- MOVL AX, R9
- XORL BX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 3395469782(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 32(SP), R10
- XORL 20(SP), R10
- XORL (SP), R10
- XORL 40(SP), R10
- ROLL $0x01, R10
- MOVL R10, 32(SP)
- MOVL BP, R9
- XORL AX, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 3395469782(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 36(SP), R10
- XORL 24(SP), R10
- XORL 4(SP), R10
- XORL 44(SP), R10
- ROLL $0x01, R10
- MOVL R10, 36(SP)
- MOVL DX, R9
- XORL BP, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 3395469782(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 40(SP), R10
- XORL 28(SP), R10
- XORL 8(SP), R10
- XORL 48(SP), R10
- ROLL $0x01, R10
- MOVL R10, 40(SP)
- MOVL CX, R9
- XORL DX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 3395469782(AX)(R10*1), AX
- ADDL R8, AX
- MOVL 44(SP), R10
- XORL 32(SP), R10
- XORL 12(SP), R10
- XORL 52(SP), R10
- ROLL $0x01, R10
- MOVL R10, 44(SP)
- MOVL BX, R9
- XORL CX, R9
- XORL DX, R9
- ROLL $0x1e, BX
- ADDL R9, BP
- MOVL AX, R8
- ROLL $0x05, R8
- LEAL 3395469782(BP)(R10*1), BP
- ADDL R8, BP
- MOVL 48(SP), R10
- XORL 36(SP), R10
- XORL 16(SP), R10
- XORL 56(SP), R10
- ROLL $0x01, R10
- MOVL R10, 48(SP)
- MOVL AX, R9
- XORL BX, R9
- XORL CX, R9
- ROLL $0x1e, AX
- ADDL R9, DX
- MOVL BP, R8
- ROLL $0x05, R8
- LEAL 3395469782(DX)(R10*1), DX
- ADDL R8, DX
- MOVL 52(SP), R10
- XORL 40(SP), R10
- XORL 20(SP), R10
- XORL 60(SP), R10
- ROLL $0x01, R10
- MOVL R10, 52(SP)
- MOVL BP, R9
- XORL AX, R9
- XORL BX, R9
- ROLL $0x1e, BP
- ADDL R9, CX
- MOVL DX, R8
- ROLL $0x05, R8
- LEAL 3395469782(CX)(R10*1), CX
- ADDL R8, CX
- MOVL 56(SP), R10
- XORL 44(SP), R10
- XORL 24(SP), R10
- XORL (SP), R10
- ROLL $0x01, R10
- MOVL R10, 56(SP)
- MOVL DX, R9
- XORL BP, R9
- XORL AX, R9
- ROLL $0x1e, DX
- ADDL R9, BX
- MOVL CX, R8
- ROLL $0x05, R8
- LEAL 3395469782(BX)(R10*1), BX
- ADDL R8, BX
- MOVL 60(SP), R10
- XORL 48(SP), R10
- XORL 28(SP), R10
- XORL 4(SP), R10
- ROLL $0x01, R10
- MOVL R10, 60(SP)
- MOVL CX, R9
- XORL DX, R9
- XORL BP, R9
- ROLL $0x1e, CX
- ADDL R9, AX
- MOVL BX, R8
- ROLL $0x05, R8
- LEAL 3395469782(AX)(R10*1), AX
- ADDL R8, AX
- ADDL R11, AX
- ADDL R12, BX
- ADDL R13, CX
- ADDL R14, DX
- ADDL R15, BP
- ADDQ $0x40, SI
- CMPQ SI, DI
- JB loop
-
-end:
- MOVQ dig+0(FP), DI
- MOVL AX, (DI)
- MOVL BX, 4(DI)
- MOVL CX, 8(DI)
- MOVL DX, 12(DI)
- MOVL BP, 16(DI)
- RET
-
// func blockAVX2(dig *digest, p []byte)
// Requires: AVX, AVX2, BMI, BMI2, CMOV
TEXT ·blockAVX2(SB), $1408-32