// File: /workspace/github_c_makefile_star2_O2/rb-de0[P]hashverifier-for-monacoin/Lyra2RE/keccak.c
// Function: keccak_core
static void
keccak_core(sph_keccak_context *kc, const void *data, size_t len, size_t lim)
{
	unsigned char *buf;
	size_t ptr;
	DECL_STATE

	buf = kc->buf;
	ptr = kc->ptr;

	if (len < (lim - ptr)) {
		memcpy(buf + ptr, data, len);
		kc->ptr = ptr + len;
		return;
	}

	READ_STATE(kc);
	while (len > 0) {
		size_t clen;

		clen = (lim - ptr);
		if (clen > len)
			clen = len;
		memcpy(buf + ptr, data, clen);
		ptr += clen;
		data = (const unsigned char *)data + clen;
		len -= clen;
		if (ptr == lim) {
			INPUT_BUF(lim);
			KECCAK_F_1600;
			ptr = 0;
		}
	}
	WRITE_STATE(kc);
	kc->ptr = ptr;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x108, %rsp            # imm = 0x108
movq %rdx, %r14
movq 0x90(%rdi), %rbx
movq %rcx, -0x110(%rbp)
movq %rcx, %rax
subq %rbx, %rax
cmpq %rdx, %rax
movq %rdi, -0x108(%rbp)
jbe 0x199ea
addq %rbx, %rdi
movq %r14, %rdx
callq 0x10b0
movq -0x108(%rbp), %rdi
addq %r14, %rbx
movq %rbx, 0x90(%rdi)
addq $0x108, %rsp            # imm = 0x108
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rsi, -0x118(%rbp)
testq %r14, %r14
je 0x199d1
movq -0x110(%rbp), %r12
movq %r12, %r13
subq %rbx, %r13
cmpq %r14, %r13
cmovaeq %r14, %r13
addq %rbx, %rdi
movq -0x118(%rbp), %r15
movq %r15, %rsi
movq %r13, %rdx
callq 0x10b0
movq -0x108(%rbp), %rdi
addq %r13, %rbx
addq %r13, %r15
movq %r15, -0x118(%rbp)
subq %r13, %r14
cmpq %r12, %rbx
jne 0x199f1
xorl %eax, %eax
movq -0x110(%rbp), %rsi
cmpq %rsi, %rax
jae 0x19a5b
movq (%rdi,%rax), %rcx
xorq %rcx, 0xa0(%rdi,%rax)
addq $0x8, %rax
jmp 0x19a44
movq %r14, -0x120(%rbp)
movq 0xa0(%rdi), %rax
movq %rax, -0x88(%rbp)
movq 0xa8(%rdi), %rax
movq %rax, -0x40(%rbp)
movq 0xd0(%rdi), %rsi
movq 0xf8(%rdi), %rax
movq %rax, -0xd8(%rbp)
movq 0x120(%rdi), %rax
movq %rax, -0x70(%rbp)
movq 0x148(%rdi), %rcx
movq 0xc0(%rdi), %rax
movq %rax, -0x48(%rbp)
movq 0xe8(%rdi), %r15
movq 0x110(%rdi), %rax
movq %rax, -0xa8(%rbp)
movq 0x138(%rdi), %rax
movq %rax, -0xb0(%rbp)
movq 0x160(%rdi), %r14
movq 0xb0(%rdi), %rax
movq %rax, -0xa0(%rbp)
movq 0xd8(%rdi), %rbx
movq 0x100(%rdi), %rax
movq %rax, -0x90(%rbp)
movq 0x128(%rdi), %r13
movq 0x150(%rdi), %r10
movq 0xc8(%rdi), %rax
movq %rax, -0x50(%rbp)
movq 0xf0(%rdi), %rax
movq %rax, -0x78(%rbp)
movq 0x118(%rdi), %r12
movq 0x140(%rdi), %rdx
movq 0xb8(%rdi), %rax
movq %rax, -0x60(%rbp)
movq 0xe0(%rdi), %rax
movq %rax, -0x68(%rbp)
movq 0x108(%rdi), %rax
movq %rax, -0x38(%rbp)
movq 0x130(%rdi), %rax
movq %rax, -0x58(%rbp)
movq %rcx, %rax
movq 0x158(%rdi), %r8
xorl %ecx, %ecx
cmpq $0x17, %rcx
ja 0x1b94f
movq %rsi, -0xd0(%rbp)
movq %rbx, %r9
movq %rbx, -0xc8(%rbp)
movq %rsi, %rbx
xorq -0x40(%rbp), %rbx
movq %r8, -0x80(%rbp)
movq -0x70(%rbp), %r8
xorq -0xd8(%rbp), %r8
movq %rax, %rsi
xorq %rbx, %rsi
xorq %r8, %rsi
rolq %rsi
movq %r10, -0xf8(%rbp)
movq %r13, %r11
movq %r13, -0xe0(%rbp)
movq %rax, -0x98(%rbp)
movq %r15, %rax
movq %r15, %r13
xorq -0x48(%rbp), %r13
movq %r12, %r15
movq %r12, -0xe8(%rbp)
movq -0xb0(%rbp), %r12
movq -0xa8(%rbp), %rdi
xorq %rdi, %r12
movq %r12, -0xc0(%rbp)
movq %r13, %rdi
xorq %r12, %rdi
xorq %r14, %rdi
movq %rcx, -0x100(%rbp)
movq %r9, %rcx
xorq -0xa0(%rbp), %rcx
movq %r14, -0xb8(%rbp)
movq %r11, %r12
xorq -0x90(%rbp), %r12
movq %rdx, -0xf0(%rbp)
movq %r10, %r14
xorq %rcx, %r14
xorq %r12, %r14
rolq %r14
xorq %rsi, %rdi
movq -0x50(%rbp), %r10
xorq -0x88(%rbp), %r10
movq %rax, -0x30(%rbp)
xorq -0x78(%rbp), %r15
movq %r10, %rsi
xorq %r15, %rsi
xorq %rdx, %rsi
xorq %r14, %rsi
xorq %rbx, %r8
movq -0x68(%rbp), %r14
movq -0x60(%rbp), %rdx
xorq %rdx, %r14
movq -0x58(%rbp), %rbx
xorq -0x38(%rbp), %rbx
movq -0x80(%rbp), %rax
movq %rax, %r9
xorq %r14, %r9
xorq %rbx, %r9
rolq %r9
movq -0x98(%rbp), %r11
xorq %r11, %r8
xorq %r9, %r8
xorq -0xb8(%rbp), %r13
xorq -0xc0(%rbp), %r13
xorq %rcx, %r12
rolq %r13
movq -0xf8(%rbp), %r9
xorq %r9, %r12
xorq %r13, %r12
movq -0xf0(%rbp), %rcx
xorq %rcx, %r10
xorq %r15, %r10
rolq %r10
xorq %r14, %rbx
xorq %rax, %rbx
movq %rax, %r14
xorq %r10, %rbx
movq -0x88(%rbp), %r13
xorq %rdi, %r13
xorq %rdi, -0x50(%rbp)
movq -0x78(%rbp), %r10
xorq %rdi, %r10
xorq %rdi, -0xe8(%rbp)
xorq %rcx, %rdi
xorq %rsi, -0x40(%rbp)
movq -0xd0(%rbp), %rcx
xorq %rsi, %rcx
xorq %rsi, -0xd8(%rbp)
movq -0x70(%rbp), %r15
xorq %rsi, %r15
xorq %r11, %rsi
xorq %r8, -0xa0(%rbp)
xorq %r8, -0xc8(%rbp)
movq -0x90(%rbp), %rax
xorq %r8, %rax
xorq %r8, -0xe0(%rbp)
xorq %r9, %r8
xorq %r12, %rdx
movq %rdx, -0x60(%rbp)
xorq %r12, -0x68(%rbp)
xorq %r12, -0x38(%rbp)
movq -0x58(%rbp), %r11
xorq %r12, %r11
xorq %r14, %r12
xorq %rbx, -0x48(%rbp)
xorq %rbx, -0x30(%rbp)
xorq %rbx, -0xa8(%rbp)
movq -0xb0(%rbp), %r14
xorq %rbx, %r14
xorq -0xb8(%rbp), %rbx
rolq $0x2c, %rcx
movq %rcx, %r9
rolq $0x2b, %rax
rolq $0x15, %r11
rolq $0xe, %rbx
movq %rbx, %rcx
andq %r11, %rcx
xorq %rax, %rcx
movq %rcx, -0x80(%rbp)
movq %rax, %rdx
notq %rax
orq %r9, %rdx
movq %rdx, -0x58(%rbp)
orq %r11, %rax
xorq %r9, %rax
movq %rax, -0x98(%rbp)
movq %r13, -0x88(%rbp)
andq %r13, %r9
xorq %rbx, %r9
movq %r9, -0xd0(%rbp)
orq %r13, %rbx
xorq %r11, %rbx
movq %rbx, -0x90(%rbp)
rolq $0x3, %r10
movq %r15, %rdx
rolq $0x2d, %rdx
rolq $0x3d, %r8
rolq $0x14, -0x30(%rbp)
movq %r8, %r9
notq %r9
movq -0x30(%rbp), %rax
orq %r10, %rax
movq %rax, %rcx
movq %rdx, %r15
andq %r10, %r15
orq %rdx, %r9
movq %rdx, %rbx
xorq %r10, %r9
movq %r9, -0x70(%rbp)
movq -0x60(%rbp), %rdx
rolq $0x1c, %rdx
xorq -0x30(%rbp), %r15
movq %r15, -0xb8(%rbp)
andq %rdx, -0x30(%rbp)
xorq %r8, -0x30(%rbp)
xorq %rdx, %rcx
movq %rcx, -0x78(%rbp)
orq %rdx, %r8
rolq $0x12, %rdi
movq -0x40(%rbp), %r9
rolq %r9
movq -0xc8(%rbp), %rcx
rolq $0x6, %rcx
movq -0x38(%rbp), %r11
rolq $0x19, %r11
movq %r14, %rdx
rolq $0x8, %rdx
xorq %rbx, %r8
movq %r8, -0x60(%rbp)
movq %rdx, %rax
notq %rax
movq %rcx, %r8
orq %r11, %r8
xorq %r9, %r8
movq %r8, -0xf0(%rbp)
andq %r11, %rdx
xorq %rcx, %rdx
movq %rdx, -0xb0(%rbp)
movq %r9, %rdx
andq %r9, %rcx
orq %rdi, %rdx
xorq %rdi, %rcx
movq %rcx, %r14
movq %rcx, -0xc8(%rbp)
andq %rax, %rdi
xorq %r11, %rdi
movq %rdi, -0x38(%rbp)
movq -0xe0(%rbp), %r13
rolq $0xf, %r13
rolq $0x38, %r12
movq -0x48(%rbp), %rdi
rolq $0x1b, %rdi
xorq %rax, %rdx
movq %rdx, -0x40(%rbp)
movq %r13, %rax
notq %rax
movq %r12, %rcx
orq %rax, %rcx
movq %rdi, %r10
movq %rdi, %r9
andq %r12, %r10
xorq %rax, %r10
movq %r10, -0xf8(%rbp)
movq -0x50(%rbp), %rdi
rolq $0x24, %rdi
movq -0xd8(%rbp), %rax
rolq $0xa, %rax
orq %rax, %r13
xorq %rax, %rcx
movq %rcx, -0x50(%rbp)
movq %rax, %rcx
andq %rdi, %rcx
movq %r9, %rax
xorq %r9, %rcx
movq %rcx, -0xc0(%rbp)
xorq %rdi, %r13
movq %r13, -0xe0(%rbp)
orq %rdi, %rax
xorq %r12, %rax
movq %rax, %r11
movq %rax, -0x48(%rbp)
movq -0xe8(%rbp), %rdi
rolq $0x29, %rdi
rolq $0x2, %rsi
movq -0xa0(%rbp), %r9
rolq $0x3e, %r9
movq -0x68(%rbp), %rcx
rolq $0x37, %rcx
movq -0xa8(%rbp), %rdx
rolq $0x27, %rdx
movq %rcx, %rax
notq %rax
movq %rdx, %r10
movq %rdx, %rbx
andq %rax, %r10
xorq %r9, %r10
movq %r10, -0xa0(%rbp)
andq %r9, %rcx
orq %rsi, %r9
movq %r9, %rdx
xorq %rsi, %rcx
movq %rcx, %r9
movq %rcx, -0x68(%rbp)
movq %rsi, %r12
andq %rdi, %r12
xorq %rbx, %r12
orq %rdi, %rbx
xorq %rax, %rbx
movq %rbx, -0xa8(%rbp)
xorq %rdi, %rdx
movq %rdx, %rdi
movq %rdx, -0xd8(%rbp)
leaq 0x9605(%rip), %rcx      # 0x23580
movq -0x100(%rbp), %rax
movq -0x58(%rbp), %rsi
xorq (%rcx,%rax,8), %rsi
xorq -0x88(%rbp), %rsi
movq -0x98(%rbp), %rax
xorq %r15, %rax
xorq -0xb0(%rbp), %r13
xorq %rbx, %r13
xorq %rax, %r13
movq -0x30(%rbp), %rdx
xorq -0xd0(%rbp), %rdx
xorq %r11, %r14
xorq %r9, %rdx
xorq %r14, %rdx
movq -0x60(%rbp), %rcx
xorq -0x90(%rbp), %rcx
movq -0xf8(%rbp), %r10
xorq -0x40(%rbp), %r10
xorq %rdi, %r10
xorq %rcx, %r10
movq -0x70(%rbp), %r15
movq %r15, %r11
xorq -0x80(%rbp), %r11
movq -0x50(%rbp), %r14
xorq -0x38(%rbp), %r14
movq %r11, %r8
xorq %r12, %r8
xorq %r14, %r8
xorq %r12, %r14
xorq %r11, %r14
rolq %r8
movq %rsi, %rax
movq -0x78(%rbp), %rcx
xorq %rcx, %rax
movq -0xf0(%rbp), %r9
movq %r9, %r11
movq -0xc0(%rbp), %rdi
xorq %rdi, %r11
movq -0xa0(%rbp), %rbx
xorq %rbx, %r11
xorq %r11, %r8
xorq %rax, %r8
xorq %rax, %r11
rolq %r11
xorq %r10, %r11
rolq %r10
xorq %r13, %r10
rolq %r13
xorq %rdx, %r13
rolq %rdx
xorq %rdx, %r14
xorq %r13, %rsi
movq %rsi, -0x58(%rbp)
xorq %r13, %rcx
movq %rcx, -0x78(%rbp)
xorq %r13, %r9
xorq %r13, %rdi
movq %rdi, -0xc0(%rbp)
xorq %rbx, %r13
xorq %r8, -0x98(%rbp)
movq -0xb8(%rbp), %rdx
xorq %r8, %rdx
xorq %r8, -0xb0(%rbp)
movq -0xe0(%rbp), %rsi
xorq %r8, %rsi
xorq -0xa8(%rbp), %r8
xorq %r10, -0x80(%rbp)
xorq %r10, %r15
movq %r15, -0x70(%rbp)
movq -0x38(%rbp), %rbx
xorq %r10, %rbx
xorq %r10, -0x50(%rbp)
xorq %r12, %r10
movq -0x90(%rbp), %rdi
xorq %r14, %rdi
xorq %r14, -0x60(%rbp)
xorq %r14, -0x40(%rbp)
movq -0xf8(%rbp), %rcx
xorq %r14, %rcx
xorq -0xd8(%rbp), %r14
movq -0xd0(%rbp), %r12
xorq %r11, %r12
xorq %r11, -0x30(%rbp)
xorq %r11, -0xc8(%rbp)
xorq %r11, -0x48(%rbp)
rolq $0x3, %r9
movq %rdx, %rax
rolq $0x2c, %rax
rolq $0x2d, %rsi
movq %rsi, %r15
rolq $0x2b, %rbx
rolq $0x3d, %r10
rolq $0x1c, %rdi
movq %rcx, %rsi
rolq $0x15, %rsi
rolq $0x14, -0x30(%rbp)
xorq -0x68(%rbp), %r11
rolq $0xe, %r11
movq %rax, %rcx
orq %rbx, %rcx
movq %rcx, -0xe0(%rbp)
movq %r11, %rdx
andq %rsi, %rdx
xorq %rbx, %rdx
movq %rdx, -0xd8(%rbp)
movq %rbx, %rdx
notq %rdx
orq %rsi, %rdx
xorq %rax, %rdx
movq %rdx, -0x38(%rbp)
movq -0x58(%rbp), %rcx
andq %rcx, %rax
xorq %r11, %rax
movq %rax, -0xb8(%rbp)
orq %rcx, %r11
xorq %rsi, %r11
movq %r11, -0x68(%rbp)
movq %r10, %rcx
notq %rcx
movq -0x30(%rbp), %rax
orq %r9, %rax
movq %rax, %rdx
movq %r15, %rax
andq %r9, %rax
orq %r15, %rcx
xorq %r9, %rcx
movq %rcx, -0x88(%rbp)
xorq -0x30(%rbp), %rax
movq %rax, -0xa8(%rbp)
andq %rdi, -0x30(%rbp)
xorq %r10, -0x30(%rbp)
xorq %rdi, %rdx
movq %rdx, -0x90(%rbp)
orq %rdi, %r10
xorq %r15, %r10
movq %r10, -0xa0(%rbp)
rolq $0x12, %r13
movq -0x98(%rbp), %r9
rolq %r9
movq -0x70(%rbp), %rsi
rolq $0x6, %rsi
movq -0x40(%rbp), %rdi
rolq $0x19, %rdi
movq -0x48(%rbp), %rdx
rolq $0x8, %rdx
movq %rdx, %rax
notq %rax
movq %rsi, %rcx
orq %rdi, %rcx
xorq %r9, %rcx
movq %rcx, -0xe8(%rbp)
andq %rdi, %rdx
xorq %rsi, %rdx
movq %rdx, %rbx
movq %rdx, -0x48(%rbp)
andq %r9, %rsi
orq %r13, %r9
xorq %r13, %rsi
movq %rsi, -0x70(%rbp)
andq %rax, %r13
xorq %rdi, %r13
movq %r13, -0xf8(%rbp)
movq -0xb0(%rbp), %rsi
rolq $0xa, %rsi
movq -0x50(%rbp), %rdi
rolq $0xf, %rdi
rolq $0x38, %r14
rolq $0x1b, %r12
xorq %rax, %r9
movq %r9, %r11
movq %r9, -0x98(%rbp)
movq %rsi, %r9
movq %rsi, %rcx
movq %rdi, %rax
orq %rdi, %r9
notq %rax
movq %r14, %rsi
orq %rax, %rsi
movq %r12, %rdi
andq %r14, %rdi
xorq %rax, %rdi
movq %rdi, %r15
movq %rdi, -0xf0(%rbp)
movq -0x78(%rbp), %rax
rolq $0x24, %rax
xorq %rcx, %rsi
movq %rsi, -0x50(%rbp)
andq %rax, %rcx
xorq %r12, %rcx
movq %rcx, -0x40(%rbp)
xorq %rax, %r9
movq %r9, %rsi
movq %r9, -0x78(%rbp)
orq %rax, %r12
xorq %r14, %r12
movq %r12, %rdi
movq %r12, -0xd0(%rbp)
movq -0xc0(%rbp), %rcx
rolq $0x29, %rcx
rolq $0x2, %r8
movq -0x60(%rbp), %rdx
rolq $0x37, %rdx
movq -0xc8(%rbp), %r9
rolq $0x27, %r9
movq %rdx, %rax
notq %rax
movq %r8, %r14
andq %rcx, %r14
xorq %r9, %r14
movq %r14, -0xc8(%rbp)
movq %r9, %r14
andq %rax, %r9
movq %r9, %r12
orq %rcx, %r14
xorq %rax, %r14
movq %r14, -0xb0(%rbp)
movq -0x80(%rbp), %rax
rolq $0x3e, %rax
andq %rax, %rdx
xorq %r8, %rdx
movq %rdx, %r9
xorq %rax, %r12
movq %r12, -0xc0(%rbp)
orq %rax, %r8
xorq %rcx, %r8
movq %r8, -0x80(%rbp)
movq -0x100(%rbp), %rax
leaq 0x9270(%rip), %rcx      # 0x23580
movq -0xe0(%rbp), %rdx
xorq 0x8(%rcx,%rax,8), %rdx
xorq -0x58(%rbp), %rdx
movq %rdx, -0xe0(%rbp)
movq -0xa8(%rbp), %rax
xorq -0x38(%rbp), %rax
movq %rbx, %rcx
xorq %rsi, %rcx
xorq %r14, %rax
xorq %rcx, %rax
movq -0x68(%rbp), %r13
xorq %r10, %r13
movq %r15, %r10
xorq %r11, %r10
movq %r13, %rsi
xorq %r8, %rsi
xorq %r10, %rsi
rolq %rsi
xorq %rax, %rsi
rolq %rax
movq -0x30(%rbp), %rcx
xorq -0xb8(%rbp), %rcx
xorq -0x70(%rbp), %rdi
movq %r9, -0x60(%rbp)
movq %r9, %r14
xorq %rdi, %r14
xorq %rcx, %r14
xorq %rax, %r14
movq %rdx, %r15
movq -0x90(%rbp), %r8
xorq %r8, %r15
movq -0x40(%rbp), %r11
movq %r11, %rax
xorq -0xe8(%rbp), %rax
xorq %r12, %rax
xorq %r15, %rax
xorq %r9, %rcx
xorq %rdi, %rcx
movq -0xd8(%rbp), %rdi
movq -0x88(%rbp), %r9
xorq %r9, %rdi
movq -0xf8(%rbp), %r15
movq -0x50(%rbp), %r12
xorq %r12, %r15
movq %rdi, %rbx
movq -0xc8(%rbp), %rdx
xorq %rdx, %rbx
xorq %r15, %rbx
rolq %rcx
xorq %rdx, %r15
xorq %rdi, %r15
xorq %rcx, %r15
rolq %rbx
xorq %rax, %rbx
rolq %rax
movq -0x80(%rbp), %rdi
xorq %rdi, %r10
xorq %r13, %r10
xorq %rax, %r10
xorq %r14, -0xe0(%rbp)
xorq %r14, %r8
movq %r8, -0x90(%rbp)
movq -0xe8(%rbp), %rax
xorq %r14, %rax
xorq %r14, %r11
movq %r11, -0x40(%rbp)
xorq -0xc0(%rbp), %r14
xorq %rbx, -0x38(%rbp)
movq -0xa8(%rbp), %rcx
xorq %rbx, %rcx
xorq %rbx, -0x48(%rbp)
movq -0x78(%rbp), %r13
xorq %rbx, %r13
xorq -0xb0(%rbp), %rbx
xorq %rsi, -0xd8(%rbp)
xorq %rsi, %r9
movq %r9, -0x88(%rbp)
movq -0xf8(%rbp), %r9
xorq %rsi, %r9
xorq %rsi, %r12
movq %r12, -0x50(%rbp)
xorq %rdx, %rsi
movq -0x68(%rbp), %r11
xorq %r15, %r11
xorq %r15, -0xa0(%rbp)
xorq %r15, -0x98(%rbp)
movq -0xf0(%rbp), %rdx
xorq %r15, %rdx
xorq %rdi, %r15
movq -0xb8(%rbp), %r12
xorq %r10, %r12
xorq %r10, -0x30(%rbp)
xorq %r10, -0x70(%rbp)
xorq %r10, -0xd0(%rbp)
rolq $0x3, %rax
movq %rax, %rdi
movq %rcx, %rax
rolq $0x2c, %rax
rolq $0x2d, %r13
rolq $0x2b, %r9
rolq $0x3d, %rsi
rolq $0x15, %rdx
rolq $0x14, -0x30(%rbp)
xorq -0x60(%rbp), %r10
rolq $0xe, %r10
movq %rax, %r8
orq %r9, %r8
movq %r10, %rcx
andq %rdx, %rcx
xorq %r9, %rcx
movq %rcx, -0x60(%rbp)
movq %r9, %rcx
notq %rcx
orq %rdx, %rcx
xorq %rax, %rcx
movq %rcx, -0x58(%rbp)
movq -0xe0(%rbp), %rcx
andq %rcx, %rax
xorq %r10, %rax
movq %rax, -0xa8(%rbp)
orq %rcx, %r10
xorq %rdx, %r10
movq %r10, -0xc0(%rbp)
movq %rsi, %rdx
notq %rdx
movq -0x30(%rbp), %rax
orq %rdi, %rax
movq %rax, %rcx
movq %r13, %rax
andq %rdi, %rax
orq %r13, %rdx
xorq %rdi, %rdx
movq %rdx, -0x68(%rbp)
rolq $0x1c, %r11
xorq -0x30(%rbp), %rax
movq %rax, -0xb0(%rbp)
andq %r11, -0x30(%rbp)
xorq %rsi, -0x30(%rbp)
xorq %r11, %rcx
movq %rcx, -0x80(%rbp)
orq %r11, %rsi
xorq %r13, %rsi
movq %rsi, %r9
movq %rsi, -0xc8(%rbp)
rolq $0x12, %r14
movq -0x38(%rbp), %r10
rolq %r10
movq -0x88(%rbp), %r13
rolq $0x6, %r13
movq -0x98(%rbp), %rdx
rolq $0x19, %rdx
movq -0xd0(%rbp), %rcx
rolq $0x8, %rcx
movq %rcx, %rax
notq %rax
movq %r13, %rdi
orq %rdx, %rdi
xorq %r10, %rdi
movq %rdi, -0x78(%rbp)
andq %rdx, %rcx
xorq %r13, %rcx
movq %rcx, -0xd0(%rbp)
andq %r10, %r13
orq %r14, %r10
movq %r10, %rdi
xorq %r14, %r13
movq %r13, -0x88(%rbp)
andq %rax, %r14
xorq %rdx, %r14
movq %r14, -0xe8(%rbp)
movq -0x90(%rbp), %rsi
rolq $0x24, %rsi
movq -0x48(%rbp), %r10
rolq $0xa, %r10
movq -0x50(%rbp), %rdx
rolq $0xf, %rdx
rolq $0x38, %r15
movq %r12, %rcx
rolq $0x1b, %rcx
xorq %rax, %rdi
movq %rdi, %r12
movq %rdi, -0x90(%rbp)
movq %r10, %rax
orq %rdx, %rax
movq %rax, %r11
notq %rdx
movq %r15, %rax
orq %rdx, %rax
movq %rcx, %rdi
andq %r15, %rdi
xorq %rdx, %rdi
movq %rdi, -0xf0(%rbp)
xorq %r10, %rax
movq %rax, -0x38(%rbp)
movq %r10, %rdx
andq %rsi, %rdx
xorq %rcx, %rdx
movq %rdx, -0x50(%rbp)
xorq %rsi, %r11
movq %r11, %r10
movq %r11, -0x98(%rbp)
orq %rsi, %rcx
xorq %r15, %rcx
movq %rcx, %rsi
movq %rcx, -0xb8(%rbp)
movq -0x40(%rbp), %rdx
rolq $0x29, %rdx
rolq $0x2, %rbx
movq -0xa0(%rbp), %rcx
rolq $0x37, %rcx
movq -0x70(%rbp), %r11
rolq $0x27, %r11
movq %rcx, %rax
movq %rcx, %r14
notq %rax
movq %rbx, %r15
movq %rdx, %rcx
andq %rdx, %r15
xorq %r11, %r15
movq %r15, -0x40(%rbp)
movq %r11, %rdx
andq %rax, %r11
orq %rcx, %rdx
xorq %rax, %rdx
movq %rdx, -0xf8(%rbp)
movq -0xd8(%rbp), %rax
rolq $0x3e, %rax
andq %rax, %r14
xorq %rbx, %r14
xorq %rax, %r11
movq %r11, -0x48(%rbp)
orq %rax, %rbx
xorq %rcx, %rbx
movq -0x100(%rbp), %rax
leaq 0x8ebd(%rip), %rcx      # 0x23580
xorq 0x10(%rcx,%rax,8), %r8
xorq -0xe0(%rbp), %r8
movq %r8, -0x70(%rbp)
movq -0xb0(%rbp), %r15
xorq -0x58(%rbp), %r15
movq -0xd0(%rbp), %rax
xorq %r10, %rax
xorq %rdx, %r15
xorq %rax, %r15
movq -0xc0(%rbp), %r11
xorq %r9, %r11
movq %rdi, %r9
xorq %r12, %r9
movq %r11, %rdx
xorq %rbx, %rdx
xorq %r9, %rdx
rolq %rdx
xorq %r15, %rdx
movq %r15, %rcx
rolq %rcx
movq -0x30(%rbp), %rax
xorq -0xa8(%rbp), %rax
movq %rsi, %r12
xorq %r13, %r12
movq %r14, -0xa0(%rbp)
movq %r14, %r15
xorq %r12, %r15
xorq %rax, %r15
xorq %rcx, %r15
movq %r8, %r13
movq -0x80(%rbp), %rsi
xorq %rsi, %r13
movq -0x50(%rbp), %rdi
movq %rdi, %rcx
xorq -0x78(%rbp), %rcx
xorq -0x48(%rbp), %rcx
xorq %r13, %rcx
xorq %r14, %rax
xorq %r12, %rax
movq -0x60(%rbp), %r12
xorq -0x68(%rbp), %r12
movq -0xe8(%rbp), %r13
movq -0x38(%rbp), %r10
xorq %r10, %r13
movq %r12, %r8
movq -0x40(%rbp), %r14
xorq %r14, %r8
xorq %r13, %r8
xorq %r14, %r13
xorq %r12, %r13
rolq %rax
xorq %rax, %r13
xorq %rbx, %r9
xorq %r11, %r9
rolq %r8
xorq %rcx, %r8
rolq %rcx
xorq %rcx, %r9
xorq %r15, -0x70(%rbp)
xorq %r15, %rsi
movq %rsi, -0x80(%rbp)
movq -0x78(%rbp), %r14
xorq %r15, %r14
xorq %r15, %rdi
movq %rdi, -0x50(%rbp)
xorq -0x48(%rbp), %r15
xorq %r8, -0x58(%rbp)
movq -0xb0(%rbp), %rdi
xorq %r8, %rdi
xorq %r8, -0xd0(%rbp)
movq -0x98(%rbp), %rsi
xorq %r8, %rsi
xorq -0xf8(%rbp), %r8
xorq %rdx, -0x60(%rbp)
xorq %rdx, -0x68(%rbp)
movq -0xe8(%rbp), %r11
xorq %rdx, %r11
xorq %rdx, %r10
movq %r10, -0x38(%rbp)
xorq -0x40(%rbp), %rdx
movq -0xc0(%rbp), %rcx
xorq %r13, %rcx
xorq %r13, -0xc8(%rbp)
xorq %r13, -0x90(%rbp)
movq -0xf0(%rbp), %r12
xorq %r13, %r12
xorq %rbx, %r13
movq -0xa8(%rbp), %rbx
xorq %r9, %rbx
xorq %r9, -0x30(%rbp)
xorq %r9, -0x88(%rbp)
xorq %r9, -0xb8(%rbp)
rolq $0x3, %r14
movq %rdi, %rax
rolq $0x2c, %rax
rolq $0x2d, %rsi
movq %rsi, -0x98(%rbp)
rolq $0x2b, %r11
rolq $0x3d, %rdx
rolq $0x1c, %rcx
movq %rcx, %r10
movq %r12, %rsi
rolq $0x15, %rsi
rolq $0x14, -0x30(%rbp)
xorq -0xa0(%rbp), %r9
rolq $0xe, %r9
movq %rax, %r12
orq %r11, %r12
movq %r9, %rcx
andq %rsi, %rcx
xorq %r11, %rcx
movq %rcx, -0xa0(%rbp)
notq %r11
orq %rsi, %r11
xorq %rax, %r11
movq %r11, -0x78(%rbp)
movq -0x70(%rbp), %rcx
andq %rcx, %rax
xorq %r9, %rax
movq %rax, -0xb0(%rbp)
orq %rcx, %r9
xorq %rsi, %r9
movq %r9, -0xd8(%rbp)
movq %rdx, %rsi
notq %rsi
movq -0x30(%rbp), %rax
orq %r14, %rax
movq %rax, %rcx
movq -0x98(%rbp), %rdi
movq %rdi, %rax
andq %r14, %rax
orq %rdi, %rsi
xorq %r14, %rsi
movq %rsi, -0x48(%rbp)
xorq -0x30(%rbp), %rax
movq %rax, -0x40(%rbp)
andq %r10, -0x30(%rbp)
xorq %rdx, -0x30(%rbp)
xorq %r10, %rcx
movq %rcx, -0xc0(%rbp)
orq %r10, %rdx
xorq %rdi, %rdx
movq %rdx, -0xe0(%rbp)
rolq $0x12, %r15
movq -0x58(%rbp), %r9
rolq %r9
movq -0x68(%rbp), %rdx
rolq $0x6, %rdx
movq -0x90(%rbp), %rsi
rolq $0x19, %rsi
movq -0xb8(%rbp), %rcx
rolq $0x8, %rcx
movq %rcx, %rdi
notq %rdi
movq %rdx, %rax
orq %rsi, %rax
xorq %r9, %rax
movq %rax, -0xe8(%rbp)
movq %r9, %rax
andq %rsi, %rcx
movq %rsi, %r10
xorq %rdx, %rcx
movq %rcx, %rsi
movq %rcx, -0xb8(%rbp)
andq %r9, %rdx
orq %r15, %rax
xorq %r15, %rdx
movq %rdx, -0x68(%rbp)
andq %rdi, %r15
xorq %r10, %r15
movq %r15, -0x90(%rbp)
movq -0xd0(%rbp), %rdx
rolq $0xa, %rdx
movq -0x38(%rbp), %r9
rolq $0xf, %r9
rolq $0x38, %r13
rolq $0x1b, %rbx
xorq %rdi, %rax
movq %rax, -0x58(%rbp)
movq %rdx, %r10
orq %r9, %r10
notq %r9
movq %r13, %rdi
orq %r9, %rdi
movq %rbx, %rax
andq %r13, %rax
xorq %r9, %rax
movq %rax, %r14
movq %rax, -0xf0(%rbp)
movq -0x80(%rbp), %rax
rolq $0x24, %rax
xorq %rdx, %rdi
movq %rdi, -0x80(%rbp)
andq %rax, %rdx
xorq %rbx, %rdx
movq %rdx, -0x98(%rbp)
xorq %rax, %r10
movq %r10, -0x38(%rbp)
orq %rax, %rbx
xorq %r13, %rbx
movq %rbx, -0xa8(%rbp)
movq -0x50(%rbp), %rdx
rolq $0x29, %rdx
rolq $0x2, %r8
movq -0xc8(%rbp), %rcx
rolq $0x37, %rcx
movq -0x88(%rbp), %rdi
rolq $0x27, %rdi
movq %rcx, %rax
movq %rcx, %r9
notq %rax
movq %r8, %r11
movq %rdx, %rcx
andq %rdx, %r11
xorq %rdi, %r11
movq %r11, -0x88(%rbp)
movq %rdi, %rdx
andq %rax, %rdi
movq %rdi, %r11
orq %rcx, %rdx
xorq %rax, %rdx
movq %rdx, %rdi
movq %rdx, -0x50(%rbp)
movq -0x60(%rbp), %rax
rolq $0x3e, %rax
andq %rax, %r9
xorq %r8, %r9
movq %r9, %rdx
xorq %rax, %r11
movq %r11, -0xd0(%rbp)
orq %rax, %r8
xorq %rcx, %r8
movq %r8, -0x60(%rbp)
movq -0x100(%rbp), %rax
leaq 0x8b10(%rip), %rcx      # 0x23580
movq %r12, %r9
xorq 0x18(%rcx,%rax,8), %r9
xorq -0x70(%rbp), %r9
movq -0x40(%rbp), %rcx
xorq -0x78(%rbp), %rcx
xorq %r10, %rsi
xorq %rdi, %rcx
xorq %rsi, %rcx
movq -0xd8(%rbp), %r15
xorq -0xe0(%rbp), %r15
movq %r14, %r13
xorq -0x58(%rbp), %r13
movq %r15, %r12
xorq %r8, %r12
xorq %r13, %r12
rolq %r12
xorq %rcx, %r12
rolq %rcx
movq -0x30(%rbp), %rax
xorq -0xb0(%rbp), %rax
movq %rbx, %r8
xorq -0x68(%rbp), %r8
movq %rdx, %rdi
movq %rdx, -0xc8(%rbp)
movq %rdx, %rbx
xorq %r8, %rbx
xorq %rax, %rbx
xorq %rcx, %rbx
movq %r9, %rcx
movq -0xc0(%rbp), %rdx
xorq %rdx, %rcx
movq -0x98(%rbp), %rsi
movq %rsi, %r14
xorq -0xe8(%rbp), %r14
xorq -0xd0(%rbp), %r14
xorq %rcx, %r14
xorq %rdi, %rax
xorq %r8, %rax
movq -0xa0(%rbp), %r8
movq -0x48(%rbp), %rdi
xorq %rdi, %r8
movq -0x90(%rbp), %r10
xorq -0x80(%rbp), %r10
movq %r8, %r11
movq -0x88(%rbp), %rcx
xorq %rcx, %r11
xorq %r10, %r11
rolq %rax
xorq %rcx, %r10
xorq %r8, %r10
xorq %rax, %r10
rolq %r11
xorq %r14, %r11
rolq %r14
movq -0x60(%rbp), %rcx
xorq %rcx, %r13
xorq %r15, %r13
xorq %r14, %r13
xorq %rbx, %r9
movq %r9, -0xf8(%rbp)
xorq %rbx, %rdx
movq %rdx, -0xc0(%rbp)
movq -0xe8(%rbp), %r9
xorq %rbx, %r9
xorq %rbx, %rsi
movq %rsi, -0x98(%rbp)
xorq -0xd0(%rbp), %rbx
movq -0x78(%rbp), %r14
xorq %r11, %r14
movq -0x40(%rbp), %rax
xorq %r11, %rax
xorq %r11, -0xb8(%rbp)
movq -0x38(%rbp), %r15
xorq %r11, %r15
xorq -0x50(%rbp), %r11
xorq %r12, -0xa0(%rbp)
xorq %r12, %rdi
movq %rdi, -0x48(%rbp)
movq -0x90(%rbp), %rsi
xorq %r12, %rsi
xorq %r12, -0x80(%rbp)
xorq -0x88(%rbp), %r12
movq -0xd8(%rbp), %r8
xorq %r10, %r8
xorq %r10, -0xe0(%rbp)
xorq %r10, -0x58(%rbp)
movq -0xf0(%rbp), %rdi
xorq %r10, %rdi
xorq %rcx, %r10
xorq %r13, -0xb0(%rbp)
xorq %r13, -0x30(%rbp)
xorq %r13, -0x68(%rbp)
movq -0xa8(%rbp), %rcx
xorq %r13, %rcx
rolq $0x3, %r9
rolq $0x2c, %rax
rolq $0x2d, %r15
rolq $0x2b, %rsi
rolq $0x3d, %r12
rolq $0x15, %rdi
rolq $0x14, -0x30(%rbp)
xorq -0xc8(%rbp), %r13
rolq $0xe, %r13
movq %rax, %rdx
orq %rsi, %rdx
movq %rdx, -0x60(%rbp)
movq %r13, %rdx
andq %rdi, %rdx
xorq %rsi, %rdx
movq %rdx, -0xd8(%rbp)
movq %rsi, %rdx
notq %rdx
orq %rdi, %rdx
xorq %rax, %rdx
movq %rdx, -0xc8(%rbp)
movq -0xf8(%rbp), %rdx
andq %rdx, %rax
xorq %r13, %rax
movq %rax, -0x40(%rbp)
orq %rdx, %r13
xorq %rdi, %r13
movq %r13, -0x78(%rbp)
movq %r12, %rdx
notq %rdx
movq -0x30(%rbp), %rax
orq %r9, %rax
movq %r15, %rsi
andq %r9, %rsi
orq %r15, %rdx
xorq %r9, %rdx
movq %rdx, -0x70(%rbp)
rolq $0x1c, %r8
xorq -0x30(%rbp), %rsi
movq %rsi, -0xd0(%rbp)
andq %r8, -0x30(%rbp)
xorq %r12, -0x30(%rbp)
xorq %r8, %rax
movq %rax, -0x50(%rbp)
orq %r8, %r12
xorq %r15, %r12
movq %r12, -0x88(%rbp)
rolq $0x12, %rbx
movq %r14, %r13
rolq %r13
movq -0x48(%rbp), %rsi
rolq $0x6, %rsi
movq -0x58(%rbp), %r9
rolq $0x19, %r9
rolq $0x8, %rcx
movq %rcx, %rax
notq %rax
movq %rsi, %rdi
orq %r9, %rdi
xorq %r13, %rdi
movq %rdi, -0x38(%rbp)
andq %r9, %rcx
xorq %rsi, %rcx
movq %rcx, %r12
movq %rcx, -0xa8(%rbp)
andq %r13, %rsi
orq %rbx, %r13
xorq %rbx, %rsi
movq %rsi, -0x48(%rbp)
andq %rax, %rbx
xorq %r9, %rbx
movq %rbx, -0x90(%rbp)
movq -0xc0(%rbp), %rsi
rolq $0x24, %rsi
movq -0xb8(%rbp), %rbx
rolq $0xa, %rbx
movq -0x80(%rbp), %rdi
rolq $0xf, %rdi
rolq $0x38, %r10
movq -0xb0(%rbp), %rdx
rolq $0x1b, %rdx
xorq %rax, %r13
movq %r13, -0xe8(%rbp)
movq %rbx, %rax
orq %rdi, %rax
movq %rax, %r14
notq %rdi
movq %r10, %rax
orq %rdi, %rax
movq %rdx, %r9
andq %r10, %r9
xorq %rdi, %r9
movq %r9, -0xc0(%rbp)
xorq %rbx, %rax
movq %rax, -0x80(%rbp)
movq %rbx, %rax
andq %rsi, %rax
xorq %rdx, %rax
movq %rax, -0x58(%rbp)
movq %rsi, %rax
xorq %rsi, %r14
movq %r14, %rsi
movq %r14, -0xb8(%rbp)
orq %rax, %rdx
xorq %r10, %rdx
movq %rdx, -0xb0(%rbp)
movq -0x98(%rbp), %rcx
rolq $0x29, %rcx
rolq $0x2, %r11
movq -0xe0(%rbp), %r14
rolq $0x37, %r14
movq -0x68(%rbp), %rbx
rolq $0x27, %rbx
movq %r14, %rax
notq %rax
movq %r11, %rdi
andq %rcx, %rdi
xorq %rbx, %rdi
movq %rdi, -0x68(%rbp)
movq %rbx, %rdi
andq %rax, %rbx
movq %rbx, %r8
orq %rcx, %rdi
xorq %rax, %rdi
movq %rdi, -0x98(%rbp)
movq -0xa0(%rbp), %rax
rolq $0x3e, %rax
andq %rax, %r14
xorq %r11, %r14
movq %r14, %rbx
xorq %rax, %r8
movq %r8, %r14
movq %r8, -0xf0(%rbp)
orq %rax, %r11
xorq %rcx, %r11
movq %r11, %r10
movq %r11, -0x128(%rbp)
movq -0x100(%rbp), %rax
leaq 0x8757(%rip), %rcx      # 0x23580
movq -0x60(%rbp), %r15
xorq 0x20(%rcx,%rax,8), %r15
xorq -0xf8(%rbp), %r15
movq %r15, %rcx
movq %r15, -0x60(%rbp)
movq -0xd0(%rbp), %r8
xorq -0xc8(%rbp), %r8
xorq %rsi, %r12
xorq %rdi, %r8
xorq %r12, %r8
movq -0x78(%rbp), %r12
xorq -0x88(%rbp), %r12
movq %r12, -0xa0(%rbp)
movq %r9, %r11
xorq %r13, %r11
xorq %r10, %r12
xorq %r11, %r12
rolq %r12
xorq %r8, %r12
movq %r8, %r10
rolq %r10
movq -0x30(%rbp), %rax
xorq -0x40(%rbp), %rax
movq %rdx, %r15
xorq -0x48(%rbp), %r15
movq %rbx, -0xe0(%rbp)
movq %rbx, %rsi
xorq %r15, %rsi
xorq %rax, %rsi
xorq %r10, %rsi
movq %rcx, %r13
movq -0x50(%rbp), %r8
xorq %r8, %r13
movq -0x58(%rbp), %r9
movq %r9, %r10
movq -0x38(%rbp), %rdi
xorq %rdi, %r10
xorq %r14, %r10
xorq %r13, %r10
xorq %rbx, %rax
xorq %r15, %rax
movq -0xd8(%rbp), %rbx
movq %rbx, %rcx
xorq -0x70(%rbp), %rcx
movq -0x90(%rbp), %r13
movq -0x80(%rbp), %r14
xorq %r14, %r13
movq %rcx, %r15
movq -0x68(%rbp), %rdx
xorq %rdx, %r15
xorq %r13, %r15
xorq %rdx, %r13
xorq %rcx, %r13
rolq %rax
xorq %rax, %r13
movq -0x128(%rbp), %rax
xorq %rax, %r11
xorq -0xa0(%rbp), %r11
rolq %r15
xorq %r10, %r15
rolq %r10
xorq %r10, %r11
movq -0x60(%rbp), %rdx
xorq %rsi, %rdx
xorq %rsi, %r8
movq %r8, -0x50(%rbp)
xorq %rsi, %rdi
movq %rdi, -0x38(%rbp)
xorq %rsi, %r9
movq %r9, -0x58(%rbp)
xorq -0xf0(%rbp), %rsi
movq %rsi, %r10
xorq %r15, -0xc8(%rbp)
movq -0xd0(%rbp), %rcx
xorq %r15, %rcx
xorq %r15, -0xa8(%rbp)
xorq %r15, -0xb8(%rbp)
xorq -0x98(%rbp), %r15
movq %r15, -0xf0(%rbp)
xorq %r12, %rbx
movq %rbx, -0xd8(%rbp)
xorq %r12, -0x70(%rbp)
movq -0x90(%rbp), %rsi
xorq %r12, %rsi
xorq %r12, %r14
movq %r14, -0x80(%rbp)
xorq -0x68(%rbp), %r12
xorq %r11, -0x40(%rbp)
xorq %r11, -0x30(%rbp)
xorq %r11, -0x48(%rbp)
movq -0xb0(%rbp), %r15
xorq %r11, %r15
xorq -0xe0(%rbp), %r11
movq -0x78(%rbp), %rdi
xorq %r13, %rdi
xorq %r13, -0x88(%rbp)
movq -0xe8(%rbp), %r9
xorq %r13, %r9
movq -0xc0(%rbp), %r8
xorq %r13, %r8
rolq $0x2c, %rcx
rolq $0x2b, %rsi
rolq $0x15, %r8
rolq $0xe, %r11
xorq %rax, %r13
movq %rcx, %rax
orq %rsi, %rax
movq %rax, %rbx
movq %r8, %rax
andq %r11, %rax
xorq %rsi, %rax
movq %rax, -0x60(%rbp)
movq %rsi, %rax
notq %rax
orq %r8, %rax
xorq %rcx, %rax
movq %rax, -0xa0(%rbp)
movq -0x100(%rbp), %rax
leaq 0x8568(%rip), %rsi      # 0x23580
xorq 0x28(%rsi,%rax,8), %rbx
movq %rcx, %rax
andq %rdx, %rax
xorq %rdx, %rbx
movq %rbx, -0xc0(%rbp)
orq %r11, %rdx
xorq %r8, %rdx
movq %rdx, -0x98(%rbp)
xorq %r11, %rax
movq %rax, -0xd0(%rbp)
movq -0x38(%rbp), %rsi
rolq $0x3, %rsi
movq -0xb8(%rbp), %r8
rolq $0x2d, %r8
rolq $0x3d, %r12
rolq $0x1c, %rdi
rolq $0x14, -0x30(%rbp)
movq %rsi, %rcx
orq -0x30(%rbp), %rcx
xorq %rdi, %rcx
movq %rcx, -0x38(%rbp)
movq %r8, %rcx
andq %rsi, %rcx
xorq -0x30(%rbp), %rcx
movq %rcx, -0xb0(%rbp)
andq %rdi, -0x30(%rbp)
orq %r12, %rdi
movq %rdi, %rcx
xorq %r12, -0x30(%rbp)
notq %r12
orq %r8, %r12
xorq %rsi, %r12
movq %r12, -0xe0(%rbp)
rolq $0x12, %r10
movq -0xc8(%rbp), %rsi
rolq %rsi
movq -0x70(%rbp), %rdx
rolq $0x6, %rdx
movq %r9, %rdi
rolq $0x19, %rdi
movq %r15, %rax
rolq $0x8, %rax
xorq %r8, %rcx
movq %rcx, -0x68(%rbp)
movq %rdi, %r9
andq %rax, %r9
notq %rax
movq %r10, %r8
andq %rax, %r8
xorq %rdi, %r8
movq %r8, -0xe8(%rbp)
orq %rdx, %rdi
xorq %rsi, %rdi
movq %rdi, -0xb8(%rbp)
xorq %rdx, %r9
movq %r9, -0x90(%rbp)
andq %rsi, %rdx
xorq %r10, %rdx
movq %rdx, -0x70(%rbp)
orq %rsi, %r10
xorq %rax, %r10
movq %r10, -0x78(%rbp)
movq -0xa8(%rbp), %rcx
rolq $0xa, %rcx
movq -0x80(%rbp), %rdx
rolq $0xf, %rdx
rolq $0x38, %r13
movq -0x40(%rbp), %r11
rolq $0x1b, %r11
movq %rcx, %r15
orq %rdx, %r15
notq %rdx
movq %r13, %rbx
orq %rdx, %rbx
movq %r13, %r8
andq %r11, %r8
xorq %rdx, %r8
movq %r8, -0xf8(%rbp)
movq -0x50(%rbp), %rdx
rolq $0x24, %rdx
xorq %rcx, %rbx
movq %rbx, -0x80(%rbp)
andq %rdx, %rcx
xorq %r11, %rcx
movq %rcx, -0xc8(%rbp)
xorq %rdx, %r15
movq %r15, -0xa8(%rbp)
orq %rdx, %r11
movq -0x58(%rbp), %r12
rolq $0x29, %r12
movq -0xf0(%rbp), %r8
rolq $0x2, %r8
movq -0xd8(%rbp), %rsi
rolq $0x3e, %rsi
movq -0x88(%rbp), %rdx
rolq $0x37, %rdx
xorq %r13, %r11
movq %r11, -0x40(%rbp)
movq -0x48(%rbp), %rdi
rolq $0x27, %rdi
movq %rdx, %rax
notq %rax
andq %rsi, %rdx
xorq %r8, %rdx
movq %rdx, %r13
movq %rdx, -0x88(%rbp)
movq %r8, %r10
movq %r8, %rdx
andq %r12, %rdx
orq %rsi, %r10
xorq %r12, %r10
movq %r10, -0x48(%rbp)
movq %rdi, %r10
orq %rdi, %r12
xorq %rdi, %rdx
movq %rdx, -0x58(%rbp)
andq %rax, %r10
xorq %rsi, %r10
xorq %rax, %r12
movq -0xb0(%rbp), %r14
xorq -0xa0(%rbp), %r14
xorq %r9, %r15
movq %r12, %rax
xorq %r14, %rax
xorq %r15, %rax
rolq %rax
movq -0x30(%rbp), %r9
xorq -0xd0(%rbp), %r9
xorq -0x70(%rbp), %r11
movq %r9, %rsi
xorq %r11, %rsi
xorq %r13, %rsi
movq -0xe0(%rbp), %r8
xorq -0x60(%rbp), %r8
movq %rbx, %r13
xorq -0xe8(%rbp), %r13
movq %rdx, %rcx
xorq %r8, %rcx
xorq %r13, %rcx
rolq %rcx
xorq %rax, %rsi
movq -0x38(%rbp), %rdi
xorq -0xc0(%rbp), %rdi
movq -0xc8(%rbp), %rdx
xorq -0xb8(%rbp), %rdx
movq %rdi, %rbx
xorq %rdx, %rbx
xorq %rcx, %rbx
xorq %r14, %r15
movq -0x68(%rbp), %rcx
xorq -0x98(%rbp), %rcx
movq -0xf8(%rbp), %r14
xorq -0x78(%rbp), %r14
movq -0x48(%rbp), %rax
xorq %rcx, %rax
xorq %r14, %rax
rolq %rax
xorq %r12, %r15
xorq %rax, %r15
xorq -0x88(%rbp), %r9
xorq %r11, %r9
rolq %r9
xorq %r8, %r13
movq -0x58(%rbp), %r8
xorq %r8, %r13
xorq %r9, %r13
xorq %r10, %rdx
xorq %rdi, %rdx
xorq %rcx, %r14
rolq %rdx
movq -0x48(%rbp), %rax
xorq %rax, %r14
xorq %rdx, %r14
xorq %r10, %rbx
movq -0xc0(%rbp), %r9
movq %rsi, %rdi
xorq %rsi, %r9
xorq %rsi, -0x38(%rbp)
xorq %rsi, -0xb8(%rbp)
xorq %rsi, -0xc8(%rbp)
xorq %r10, %rdi
xorq %rbx, -0xa0(%rbp)
movq -0xb0(%rbp), %rcx
xorq %rbx, %rcx
xorq %rbx, -0x90(%rbp)
xorq %rbx, -0xa8(%rbp)
xorq %r12, %rbx
movq %rbx, -0xf0(%rbp)
xorq %r15, -0x60(%rbp)
movq -0xe0(%rbp), %rbx
xorq %r15, %rbx
movq -0xe8(%rbp), %r12
xorq %r15, %r12
xorq %r15, -0x80(%rbp)
xorq %r8, %r15
movq -0x98(%rbp), %rsi
xorq %r13, %rsi
xorq %r13, -0x68(%rbp)
movq -0x78(%rbp), %r8
xorq %r13, %r8
movq -0xf8(%rbp), %r11
xorq %r13, %r11
xorq %rax, %r13
movq -0xd0(%rbp), %r10
xorq %r14, %r10
xorq %r14, -0x30(%rbp)
xorq %r14, -0x70(%rbp)
xorq %r14, -0x40(%rbp)
xorq -0x88(%rbp), %r14
rolq $0x2c, %rcx
rolq $0x2b, %r12
rolq $0x15, %r11
rolq $0xe, %r14
movq %rcx, %rax
orq %r12, %rax
movq %rax, %rdx
movq %r11, %rax
andq %r14, %rax
xorq %r12, %rax
movq %rax, -0xc0(%rbp)
movq %r12, %rax
notq %rax
orq %r11, %rax
movq %r11, %r12
xorq %rcx, %rax
movq %rax, -0xd8(%rbp)
andq %r9, %rcx
movq %r9, %r11
movq %rcx, %r9
movq -0x100(%rbp), %rax
leaq 0x81b9(%rip), %rcx      # 0x23580
xorq 0x30(%rcx,%rax,8), %rdx
movq %r11, %rax
xorq %r11, %rdx
movq %rdx, -0x78(%rbp)
orq %r14, %rax
xorq %r12, %rax
movq %rax, -0x88(%rbp)
movq -0xb8(%rbp), %rdx
rolq $0x3, %rdx
movq -0xa8(%rbp), %r11
rolq $0x2d, %r11
rolq $0x3d, %r15
movq %rsi, %rcx
rolq $0x1c, %rcx
xorq %r14, %r9
rolq $0x14, -0x30(%rbp)
movq %rdx, %rax
orq -0x30(%rbp), %rax
xorq %rcx, %rax
movq %rax, -0x98(%rbp)
movq %r11, %rax
andq %rdx, %rax
xorq -0x30(%rbp), %rax
movq %rax, -0x48(%rbp)
andq %rcx, -0x30(%rbp)
movq %rcx, %rax
orq %r15, %rax
xorq %r15, -0x30(%rbp)
notq %r15
orq %r11, %r15
xorq %rdx, %r15
movq %r15, -0xa8(%rbp)
xorq %r11, %rax
movq %rax, -0xb8(%rbp)
rolq $0x12, %rdi
movq -0xa0(%rbp), %rdx
rolq %rdx
movq %rbx, %r12
rolq $0x6, %r12
movq %r8, %rsi
rolq $0x19, %rsi
movq -0x40(%rbp), %rax
rolq $0x8, %rax
movq %rsi, %r11
andq %rax, %r11
notq %rax
movq %rdi, %r8
andq %rax, %r8
movq %rax, %rcx
xorq %rsi, %r8
movq %r8, -0xa0(%rbp)
orq %r12, %rsi
xorq %rdx, %rsi
movq %rsi, -0x50(%rbp)
xorq %r12, %r11
movq %r11, -0xe8(%rbp)
andq %rdx, %r12
xorq %rdi, %r12
movq %r12, -0xe0(%rbp)
movq %r9, %rsi
movq %r9, -0xb0(%rbp)
orq %rdx, %rdi
movq -0x38(%rbp), %rdx
rolq $0x24, %rdx
movq -0x90(%rbp), %r8
rolq $0xa, %r8
movq -0x80(%rbp), %r9
rolq $0xf, %r9
rolq $0x38, %r13
movq %r10, %rax
rolq $0x1b, %rax
xorq %rcx, %rdi
movq %rdi, -0x40(%rbp)
movq %r8, %r14
orq %r9, %r14
notq %r9
movq %r13, %rcx
orq %r9, %rcx
movq %r13, %rdi
andq %rax, %rdi
xorq %r9, %rdi
movq %rdi, -0x38(%rbp)
xorq %r8, %rcx
movq %rcx, -0x58(%rbp)
movq %r8, %rcx
andq %rdx, %rcx
xorq %rax, %rcx
movq %rcx, -0x80(%rbp)
xorq %rdx, %r14
movq %r14, -0xf8(%rbp)
orq %rdx, %rax
xorq %r13, %rax
movq %rax, %r10
movq %rax, -0xd0(%rbp)
movq -0xc8(%rbp), %r8
rolq $0x29, %r8
movq -0xf0(%rbp), %rdi
rolq $0x2, %rdi
movq -0x60(%rbp), %rdx
rolq $0x3e, %rdx
movq -0x68(%rbp), %rbx
rolq $0x37, %rbx
movq -0x70(%rbp), %r9
rolq $0x27, %r9
movq %rbx, %rax
notq %rax
andq %rdx, %rbx
xorq %rdi, %rbx
movq %rdi, %r15
andq %r8, %r15
orq %rdx, %rdi
xorq %r8, %rdi
movq %rdi, -0x70(%rbp)
orq %r9, %r8
xorq %r9, %r15
movq %r15, -0xc8(%rbp)
andq %rax, %r9
xorq %rdx, %r9
movq %r9, -0x60(%rbp)
xorq %rax, %r8
movq -0x48(%rbp), %rax
xorq -0xd8(%rbp), %rax
xorq %r11, %r14
movq %r8, %rcx
movq %r8, -0xf0(%rbp)
xorq %rax, %rcx
xorq %r14, %rcx
rolq %rcx
movq -0x30(%rbp), %r15
xorq %rsi, %r15
movq %r10, %r11
xorq %r12, %r11
movq %r15, %rsi
xorq %r11, %rsi
movq %rbx, -0x68(%rbp)
xorq %rbx, %rsi
xorq %rcx, %rsi
movq -0xb8(%rbp), %r12
xorq -0x88(%rbp), %r12
movq -0x38(%rbp), %r9
xorq -0x40(%rbp), %r9
movq %rdi, %r10
xorq %r12, %r10
xorq %r9, %r10
rolq %r10
xorq %rax, %r14
xorq %r8, %r14
xorq %r10, %r14
xorq %rbx, %r15
xorq %r11, %r15
movq -0xa8(%rbp), %r10
movq -0xc0(%rbp), %r13
xorq %r13, %r10
movq -0x58(%rbp), %rdi
xorq -0xa0(%rbp), %rdi
movq -0xc8(%rbp), %rcx
movq %rcx, %rax
xorq %r10, %rax
xorq %rdi, %rax
xorq %r10, %rdi
rolq %r15
xorq %rcx, %rdi
xorq %r15, %rdi
rolq %rax
movq -0x98(%rbp), %rdx
movq %rdx, %r10
movq -0x78(%rbp), %rbx
xorq %rbx, %r10
movq -0x80(%rbp), %r8
movq %r8, %r15
movq -0x50(%rbp), %rcx
xorq %rcx, %r15
xorq %r10, %rax
movq -0x60(%rbp), %r11
xorq %r11, %r15
xorq %r15, %rax
xorq %r10, %r15
movq -0x48(%rbp), %r10
xorq %r12, %r9
rolq %r15
xorq -0x70(%rbp), %r9
xorq %r15, %r9
movq -0x30(%rbp), %r15
xorq %rsi, %rbx
movq %rbx, -0x78(%rbp)
xorq %rsi, %rdx
movq %rdx, -0x98(%rbp)
xorq %rsi, %rcx
movq %rcx, -0x50(%rbp)
xorq %rsi, %r8
movq %r8, -0x80(%rbp)
xorq %r11, %rsi
movq %rsi, -0x90(%rbp)
xorq %rax, -0xd8(%rbp)
xorq %rax, %r10
xorq %rax, -0xe8(%rbp)
movq -0xf8(%rbp), %rbx
xorq %rax, %rbx
xorq -0xf0(%rbp), %rax
movq %rax, %r11
movq %r14, %r8
xorq %r14, %r13
movq %r13, -0xc0(%rbp)
xorq %r14, -0xa8(%rbp)
movq -0xa0(%rbp), %r14
xorq %r8, %r14
xorq %r8, -0x58(%rbp)
xorq -0xc8(%rbp), %r8
xorq %r9, -0xb0(%rbp)
xorq %r9, %r15
xorq %r9, -0xe0(%rbp)
xorq %r9, -0xd0(%rbp)
xorq -0x68(%rbp), %r9
movq -0x88(%rbp), %rcx
xorq %rdi, %rcx
xorq %rdi, -0xb8(%rbp)
movq -0x40(%rbp), %r12
xorq %rdi, %r12
movq -0x38(%rbp), %rsi
xorq %rdi, %rsi
rolq $0x2c, %r10
rolq $0x2b, %r14
rolq $0x15, %rsi
rolq $0xe, %r9
xorq -0x70(%rbp), %rdi
movq %rdi, -0x30(%rbp)
movq %r10, %rax
orq %r14, %rax
movq %rsi, %rdx
andq %r9, %rdx
xorq %r14, %rdx
movq %rdx, -0xa0(%rbp)
movq %r14, %rdx
notq %rdx
orq %rsi, %rdx
movq %rsi, %r14
xorq %r10, %rdx
movq %rdx, -0x40(%rbp)
movq -0x100(%rbp), %rdx
leaq 0x7df5(%rip), %rsi      # 0x23580
xorq 0x38(%rsi,%rdx,8), %rax
movq -0x78(%rbp), %rdx
andq %rdx, %r10
xorq %rdx, %rax
movq %rax, -0x88(%rbp)
orq %r9, %rdx
xorq %r14, %rdx
movq %rdx, -0x60(%rbp)
xorq %r9, %r10
movq %r10, -0x48(%rbp)
movq -0x50(%rbp), %rdx
rolq $0x3, %rdx
movq %rbx, %rdi
rolq $0x2d, %rdi
rolq $0x3d, %r8
rolq $0x1c, %rcx
rolq $0x14, %r15
movq %rdx, %rax
orq %r15, %rax
xorq %rcx, %rax
movq %rax, -0x50(%rbp)
movq %rdi, %rsi
andq %rdx, %rsi
xorq %r15, %rsi
andq %rcx, %r15
orq %r8, %rcx
xorq %r8, %r15
movq %r8, %rbx
notq %rbx
orq %rdi, %rbx
movq %rdi, %r14
xorq %rdx, %rbx
movq -0x90(%rbp), %r8
rolq $0x12, %r8
movq -0xd8(%rbp), %rdi
rolq %rdi
movq -0xa8(%rbp), %rdx
rolq $0x6, %rdx
rolq $0x19, %r12
movq -0xd0(%rbp), %rax
rolq $0x8, %rax
xorq %r14, %rcx
movq %rcx, -0x68(%rbp)
movq %r12, %r13
andq %rax, %r13
notq %rax
movq %r8, %rcx
andq %rax, %rcx
xorq %r12, %rcx
movq %rcx, -0x90(%rbp)
orq %rdx, %r12
xorq %rdi, %r12
movq %r12, -0x78(%rbp)
xorq %rdx, %r13
movq %r13, -0xd8(%rbp)
andq %rdi, %rdx
xorq %r8, %rdx
movq %rdx, -0xa8(%rbp)
movq %r8, %r12
orq %rdi, %r12
xorq %rax, %r12
movq %r12, -0x38(%rbp)
movq -0xe8(%rbp), %r12
rolq $0xa, %r12
movq -0x58(%rbp), %rax
rolq $0xf, %rax
movq -0x30(%rbp), %r8
rolq $0x38, %r8
movq -0xb0(%rbp), %rdx
rolq $0x1b, %rdx
movq %r12, %rdi
orq %rax, %rdi
notq %rax
movq %r8, %r13
orq %rax, %r13
movq %rax, %rcx
movq %r8, %rax
andq %rdx, %rax
xorq %rcx, %rax
movq %rax, -0x58(%rbp)
movq -0x98(%rbp), %rcx
rolq $0x24, %rcx
xorq %r12, %r13
andq %rcx, %r12
xorq %rdx, %r12
xorq %rcx, %rdi
movq %rdi, -0x70(%rbp)
orq %rcx, %rdx
movq -0x80(%rbp), %r9
rolq $0x29, %r9
rolq $0x2, %r11
movq -0xc0(%rbp), %rdi
rolq $0x3e, %rdi
movq -0xb8(%rbp), %r14
rolq $0x37, %r14
xorq %r8, %rdx
movq %rdx, -0xb0(%rbp)
movq -0xe0(%rbp), %rdx
rolq $0x27, %rdx
movq %r14, %rcx
notq %rcx
andq %rdi, %r14
xorq %r11, %r14
movq %r11, %r8
movq %r11, %r10
andq %r9, %r10
orq %rdi, %r8
xorq %r9, %r8
movq %r9, %rax
orq %rdx, %rax
xorq %rdx, %r10
andq %rcx, %rdx
xorq %rdi, %rdx
xorq %rcx, %rax
movq -0x100(%rbp), %rcx
addq $0x8, %rcx
jmp 0x19b64
movq -0x108(%rbp), %rdi
movq -0x40(%rbp), %rcx
movq %rcx, 0xa8(%rdi)
movq %rsi, 0xd0(%rdi)
movq -0xd8(%rbp), %rcx
movq %rcx, 0xf8(%rdi)
movq -0x70(%rbp), %rcx
movq %rcx, 0x120(%rdi)
movq %rax, 0x148(%rdi)
movq -0x48(%rbp), %rcx
movq %rcx, 0xc0(%rdi)
movq %r15, 0xe8(%rdi)
movq -0xa8(%rbp), %rcx
movq %rcx, 0x110(%rdi)
movq -0xb0(%rbp), %rcx
movq %rcx, 0x138(%rdi)
movq %r14, 0x160(%rdi)
movq -0xa0(%rbp), %rcx
movq %rcx, 0xb0(%rdi)
movq %rbx, 0xd8(%rdi)
movq -0x90(%rbp), %rax
movq %rax, 0x100(%rdi)
movq %r13, 0x128(%rdi)
movq %r10, 0x150(%rdi)
movq -0x88(%rbp), %rcx
movq %rcx, 0xa0(%rdi)
movq -0x50(%rbp), %rcx
movq %rcx, 0xc8(%rdi)
movq -0x78(%rbp), %rcx
movq %rcx, 0xf0(%rdi)
movq %r12, 0x118(%rdi)
movq %rdx, 0x140(%rdi)
movq -0x60(%rbp), %rcx
movq %rcx, 0xb8(%rdi)
movq -0x68(%rbp), %rcx
movq %rcx, 0xe0(%rdi)
movq -0x38(%rbp), %rcx
movq %rcx, 0x108(%rdi)
movq -0x58(%rbp), %rax
movq %rax, 0x130(%rdi)
movq %r8, 0x158(%rdi)
xorl %ebx, %ebx
movq -0x120(%rbp), %r14
jmp 0x199f1