// File: /workspace/github_c_makefile_star2_O3/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 %rcx, %rbx
movq %rdx, %r15
movq %rsi, %r12
movq %rdi, %r14
movq 0x90(%rdi), %rcx
movq %rbx, %rax
subq %rcx, %rax
cmpq %rdx, %rax
jbe 0x1a67b
leaq (%r14,%rcx), %rdi
movq %r12, %rsi
movq %r15, %rdx
movq %rcx, %rbx
callq 0x10b0
movq %rbx, %rcx
addq %r15, %rcx
jmp 0x1c6fe
testq %r15, %r15
je 0x1c6fe
movq %r14, -0x110(%rbp)
movq %rbx, -0x108(%rbp)
movq %rcx, -0x30(%rbp)
movq %rbx, %r13
subq %rcx, %r13
cmpq %r15, %r13
cmovaeq %r15, %r13
leaq (%r14,%rcx), %rdi
movq %r12, %rsi
movq %r13, %rdx
callq 0x10b0
movq -0x30(%rbp), %rcx
movq %r13, -0x128(%rbp)
addq %r13, %rcx
cmpq %rbx, %rcx
jne 0x1c6eb
movq %r12, -0x118(%rbp)
movq %r15, -0x120(%rbp)
testq %rbx, %rbx
je 0x1a6f3
xorl %eax, %eax
movq (%r14,%rax), %rcx
xorq %rcx, 0xa0(%r14,%rax)
addq $0x8, %rax
cmpq %rbx, %rax
jb 0x1a6de
movq 0xa0(%r14), %rax
movq %rax, -0xb0(%rbp)
movq 0xa8(%r14), %rax
movq %rax, -0x80(%rbp)
movq 0xd0(%r14), %rax
movq %rax, -0x88(%rbp)
movq 0xf8(%r14), %rax
movq %rax, -0x78(%rbp)
movq 0x120(%r14), %rdi
movq 0x148(%r14), %r13
movq 0xc0(%r14), %rax
movq %rax, -0x90(%rbp)
movq 0xe8(%r14), %rax
movq %rax, -0x30(%rbp)
movq 0x110(%r14), %rax
movq %rax, -0xc8(%rbp)
movq 0x138(%r14), %rdx
movq 0x160(%r14), %rax
movq %rax, -0x40(%rbp)
movq 0xb0(%r14), %rax
movq %rax, -0xa8(%rbp)
movq %r14, %rax
movq 0xd8(%r14), %r14
movq 0x100(%rax), %r15
movq 0x128(%rax), %rcx
movq %rcx, -0x60(%rbp)
movq 0x150(%rax), %r12
movq 0xc8(%rax), %rsi
movq %rsi, -0xa0(%rbp)
movq 0xf0(%rax), %rcx
movq %rcx, -0x68(%rbp)
movq 0x118(%rax), %rbx
movq 0x140(%rax), %r9
movq 0xb8(%rax), %rcx
movq %rcx, -0x70(%rbp)
movq 0xe0(%rax), %rsi
movq %rsi, -0x38(%rbp)
movq 0x108(%rax), %rcx
movq %rcx, -0x50(%rbp)
movq 0x130(%rax), %rsi
movq 0x158(%rax), %rax
movq %rax, -0x48(%rbp)
movq $-0x8, -0xf8(%rbp)
movq %r12, -0xd0(%rbp)
movq %rdi, -0xb8(%rbp)
movq %r13, -0x58(%rbp)
movq %rbx, -0x98(%rbp)
movq %rdx, -0xe0(%rbp)
movq -0x88(%rbp), %rbx
xorq -0x80(%rbp), %rbx
movq %rdi, %r10
xorq -0x78(%rbp), %r10
xorq %rbx, %r13
xorq %r10, %r13
rolq %r13
movq -0x30(%rbp), %rcx
xorq -0x90(%rbp), %rcx
xorq -0xc8(%rbp), %rdx
movq %rdx, -0xd8(%rbp)
movq %rcx, %r11
xorq %rdx, %r11
xorq -0x40(%rbp), %r11
xorq %r13, %r11
movq %r14, -0xc0(%rbp)
xorq -0xa8(%rbp), %r14
movq %r14, -0xe8(%rbp)
movq -0x60(%rbp), %rdi
xorq %r15, %rdi
xorq %r14, %r12
xorq %rdi, %r12
rolq %r12
movq -0xa0(%rbp), %rax
movq -0xb0(%rbp), %rdx
xorq %rdx, %rax
movq %rdx, %r14
movq -0x98(%rbp), %rdx
xorq -0x68(%rbp), %rdx
movq %rdx, -0xf0(%rbp)
movq %rax, %r13
xorq %rdx, %r13
xorq %r9, %r13
xorq %r12, %r13
xorq %rbx, %r10
movq -0x38(%rbp), %r8
xorq -0x70(%rbp), %r8
movq %rsi, %rbx
xorq -0x50(%rbp), %rbx
movq -0x48(%rbp), %r12
movq %r12, %rdx
xorq %r8, %rdx
xorq %rbx, %rdx
rolq %rdx
xorq -0x58(%rbp), %r10
xorq %rdx, %r10
xorq -0x40(%rbp), %rcx
xorq -0xd8(%rbp), %rcx
rolq %rcx
xorq -0xe8(%rbp), %rdi
xorq -0xd0(%rbp), %rdi
xorq %rcx, %rdi
xorq %r9, %rax
xorq -0xf0(%rbp), %rax
xorq %r8, %rbx
rolq %rax
xorq %r12, %rbx
xorq %rax, %rbx
xorq %r11, %r14
movq %r14, -0xb0(%rbp)
xorq %r11, -0xa0(%rbp)
movq -0x68(%rbp), %r14
xorq %r11, %r14
xorq %r11, -0x98(%rbp)
xorq %r9, %r11
movq %r11, %rdx
movq -0x80(%rbp), %r8
xorq %r13, %r8
movq -0x88(%rbp), %rcx
xorq %r13, %rcx
xorq %r13, -0x78(%rbp)
movq -0xb8(%rbp), %r9
xorq %r13, %r9
xorq -0x58(%rbp), %r13
movq %r13, %r11
xorq %r10, -0xa8(%rbp)
xorq %r10, -0xc0(%rbp)
xorq %r10, %r15
xorq %r10, -0x60(%rbp)
xorq -0xd0(%rbp), %r10
xorq %rdi, -0x70(%rbp)
xorq %rdi, -0x38(%rbp)
xorq %rdi, -0x50(%rbp)
xorq %rdi, %rsi
xorq %r12, %rdi
xorq %rbx, -0x90(%rbp)
xorq %rbx, -0x30(%rbp)
xorq %rbx, -0xc8(%rbp)
xorq %rbx, -0xe0(%rbp)
rolq $0x3, %r14
movq %r14, %r13
rolq $0x2c, %rcx
rolq $0x2d, %r9
rolq $0x2b, %r15
rolq $0x3d, %r10
rolq $0x15, %rsi
rolq $0x14, -0x30(%rbp)
xorq -0x40(%rbp), %rbx
rolq $0xe, %rbx
movq %rbx, %rax
andq %rsi, %rax
xorq %r15, %rax
movq %rax, -0xd8(%rbp)
movq %r15, %r14
notq %r15
movq %rcx, %rax
orq %rcx, %r14
movq %r14, -0xd0(%rbp)
orq %rsi, %r15
xorq %rcx, %r15
movq %r15, -0x48(%rbp)
movq -0xb0(%rbp), %rcx
andq %rcx, %rax
xorq %rbx, %rax
movq %rax, -0x88(%rbp)
orq %rcx, %rbx
xorq %rsi, %rbx
movq %rbx, -0xe8(%rbp)
movq %r10, %rsi
notq %rsi
movq -0x30(%rbp), %rax
orq %r13, %rax
movq %rax, %rcx
movq %r9, %rax
andq %r13, %rax
orq %r9, %rsi
xorq %r13, %rsi
movq %rsi, -0x68(%rbp)
movq -0x70(%rbp), %rsi
rolq $0x1c, %rsi
xorq -0x30(%rbp), %rax
movq %rax, -0x40(%rbp)
andq %rsi, -0x30(%rbp)
xorq %r10, -0x30(%rbp)
xorq %rsi, %rcx
movq %rcx, -0xb8(%rbp)
orq %rsi, %r10
xorq %r9, %r10
movq %r10, -0x58(%rbp)
rolq $0x12, %rdx
movq %r8, %r9
rolq %r9
movq -0xc0(%rbp), %r10
rolq $0x6, %r10
movq -0x50(%rbp), %r8
rolq $0x19, %r8
movq -0xe0(%rbp), %r13
rolq $0x8, %r13
movq %r13, %rax
notq %rax
movq %r10, %rsi
orq %r8, %rsi
xorq %r9, %rsi
movq %rsi, -0x70(%rbp)
andq %r8, %r13
xorq %r10, %r13
movq %r13, -0xe0(%rbp)
movq %r9, %rcx
andq %r9, %r10
orq %rdx, %rcx
xorq %rdx, %r10
movq %r10, -0xc0(%rbp)
andq %rax, %rdx
xorq %r8, %rdx
movq %rdx, -0x50(%rbp)
xorq %rax, %rcx
movq %rcx, -0x80(%rbp)
movq -0xa0(%rbp), %rsi
rolq $0x24, %rsi
movq -0x60(%rbp), %r12
rolq $0xf, %r12
rolq $0x38, %rdi
movq -0x90(%rbp), %rbx
rolq $0x1b, %rbx
movq %r12, %rax
notq %rax
movq %rdi, %r14
orq %rax, %r14
movq %rbx, %r10
andq %rdi, %r10
xorq %rax, %r10
movq %r10, -0xf0(%rbp)
movq -0x78(%rbp), %rax
rolq $0xa, %rax
orq %rax, %r12
xorq %rax, %r14
movq %r14, -0xa0(%rbp)
movq %rax, %rcx
andq %rsi, %rcx
movq %rbx, %rax
xorq %rbx, %rcx
movq %rcx, -0x78(%rbp)
xorq %rsi, %r12
movq %r12, -0x60(%rbp)
orq %rsi, %rax
movq -0x98(%rbp), %r8
rolq $0x29, %r8
rolq $0x2, %r11
movq -0xa8(%rbp), %rbx
rolq $0x3e, %rbx
movq -0x38(%rbp), %rcx
rolq $0x37, %rcx
movq -0xc8(%rbp), %r15
rolq $0x27, %r15
xorq %rdi, %rax
movq %rax, %rsi
movq %rax, -0x90(%rbp)
movq %rcx, %rax
notq %rax
movq %r15, %rdx
andq %rax, %rdx
xorq %rbx, %rdx
movq %rdx, -0xc8(%rbp)
andq %rbx, %rcx
orq %r11, %rbx
xorq %r11, %rcx
movq %rcx, %rdi
movq %rcx, -0x38(%rbp)
andq %r8, %r11
xorq %r15, %r11
movq %r11, %r9
orq %r8, %r15
xorq %rax, %r15
xorq %r8, %rbx
movq %rbx, -0xa8(%rbp)
movq -0xf8(%rbp), %rcx
leaq 0x99b4(%rip), %rax      # 0x24580
movq -0xd0(%rbp), %rdx
xorq 0x40(%rax,%rcx,8), %rdx
xorq -0xb0(%rbp), %rdx
movq -0x48(%rbp), %rax
xorq -0x40(%rbp), %rax
movq %r12, %r11
xorq %r13, %r11
xorq %r15, %r11
xorq %rax, %r11
movq -0x30(%rbp), %rax
xorq -0x88(%rbp), %rax
movq -0xc0(%rbp), %rcx
xorq %rsi, %rcx
xorq %rdi, %rax
xorq %rcx, %rax
movq -0x58(%rbp), %rcx
xorq -0xe8(%rbp), %rcx
movq %r10, %r12
xorq -0x80(%rbp), %r12
xorq %rbx, %r12
xorq %rcx, %r12
movq -0x68(%rbp), %rcx
movq -0xd8(%rbp), %r8
xorq %r8, %rcx
movq %r14, %r10
xorq -0x50(%rbp), %r10
movq %rcx, %rbx
movq %r9, -0x98(%rbp)
xorq %r9, %rbx
xorq %r10, %rbx
rolq %rbx
xorq %r9, %r10
xorq %rcx, %r10
movq %rdx, %rcx
movq -0xb8(%rbp), %rsi
xorq %rsi, %rcx
movq -0x70(%rbp), %r14
movq %r14, %r13
movq -0x78(%rbp), %rdi
xorq %rdi, %r13
movq -0xc8(%rbp), %r9
xorq %r9, %r13
xorq %r13, %rbx
xorq %rcx, %rbx
xorq %rcx, %r13
rolq %r13
xorq %r12, %r13
rolq %r12
xorq %r11, %r12
rolq %r11
xorq %rax, %r11
rolq %rax
xorq %rax, %r10
xorq %r11, %rdx
movq %rdx, -0xd0(%rbp)
xorq %r11, %rsi
movq %rsi, -0xb8(%rbp)
xorq %r11, %r14
movq %r14, -0x70(%rbp)
xorq %r11, %rdi
movq %rdi, -0x78(%rbp)
xorq %r9, %r11
xorq %rbx, -0x48(%rbp)
movq -0x40(%rbp), %rax
xorq %rbx, %rax
xorq %rbx, -0xe0(%rbp)
xorq %rbx, -0x60(%rbp)
xorq %r15, %rbx
xorq %r12, %r8
movq %r8, -0xd8(%rbp)
xorq %r12, -0x68(%rbp)
movq -0x50(%rbp), %rsi
xorq %r12, %rsi
xorq %r12, -0xa0(%rbp)
xorq -0x98(%rbp), %r12
movq -0xe8(%rbp), %r8
xorq %r10, %r8
xorq %r10, -0x58(%rbp)
movq -0x80(%rbp), %rdx
xorq %r10, %rdx
movq -0xf0(%rbp), %r14
xorq %r10, %r14
xorq -0xa8(%rbp), %r10
movq -0x88(%rbp), %rdi
xorq %r13, %rdi
xorq %r13, -0x30(%rbp)
xorq %r13, -0xc0(%rbp)
xorq %r13, -0x90(%rbp)
xorq -0x38(%rbp), %r13
rolq $0x2c, %rax
rolq $0x2b, %rsi
rolq $0x15, %r14
rolq $0xe, %r13
movq %rax, %rcx
orq %rsi, %rcx
movq %rcx, -0xb0(%rbp)
movq %r13, %rcx
andq %r14, %rcx
xorq %rsi, %rcx
movq %rcx, -0xa8(%rbp)
movq %rsi, %rcx
notq %rcx
orq %r14, %rcx
xorq %rax, %rcx
movq %rcx, -0x98(%rbp)
movq -0xd0(%rbp), %rcx
andq %rcx, %rax
xorq %r13, %rax
movq %rax, -0x40(%rbp)
orq %rcx, %r13
xorq %r14, %r13
movq %r13, -0x50(%rbp)
movq -0x70(%rbp), %r15
rolq $0x3, %r15
movq -0x60(%rbp), %r9
rolq $0x2d, %r9
rolq $0x3d, %r12
rolq $0x14, -0x30(%rbp)
movq %r12, %rax
notq %rax
movq -0x30(%rbp), %rcx
orq %r15, %rcx
movq %rcx, %rsi
movq %r9, %r14
andq %r15, %r14
orq %r9, %rax
xorq %r15, %rax
movq %rax, -0x80(%rbp)
movq %r8, %rax
rolq $0x1c, %rax
xorq -0x30(%rbp), %r14
movq %r14, -0xc8(%rbp)
andq %rax, -0x30(%rbp)
xorq %r12, -0x30(%rbp)
xorq %rax, %rsi
movq %rsi, -0x70(%rbp)
orq %rax, %r12
rolq $0x12, %r11
movq -0x48(%rbp), %r15
rolq %r15
movq -0x68(%rbp), %r8
rolq $0x6, %r8
movq %rdx, %rsi
rolq $0x19, %rsi
movq -0x90(%rbp), %rcx
rolq $0x8, %rcx
xorq %r9, %r12
movq %r12, -0x60(%rbp)
movq %rcx, %rax
notq %rax
movq %r8, %rdx
orq %rsi, %rdx
xorq %r15, %rdx
movq %rdx, -0x38(%rbp)
andq %rsi, %rcx
xorq %r8, %rcx
movq %rcx, %r12
movq %rcx, -0x90(%rbp)
movq %r15, %rcx
andq %r15, %r8
orq %r11, %rcx
xorq %r11, %r8
movq %r8, -0x68(%rbp)
andq %rax, %r11
xorq %rsi, %r11
movq %r11, -0xe8(%rbp)
xorq %rax, %rcx
movq %rcx, %r11
movq %rcx, -0x100(%rbp)
movq -0xe0(%rbp), %rsi
rolq $0xa, %rsi
movq -0xa0(%rbp), %rcx
rolq $0xf, %rcx
rolq $0x38, %r10
movq %rdi, %rax
rolq $0x1b, %rax
movq %rsi, %rdx
orq %rcx, %rdx
notq %rcx
movq %r10, %rdi
orq %rcx, %rdi
movq %rax, %r9
andq %r10, %r9
xorq %rcx, %r9
movq %r9, -0xf0(%rbp)
movq -0xb8(%rbp), %rcx
rolq $0x24, %rcx
xorq %rsi, %rdi
movq %rdi, -0x48(%rbp)
andq %rcx, %rsi
xorq %rax, %rsi
movq %rsi, -0xa0(%rbp)
xorq %rcx, %rdx
movq %rdx, %rdi
movq %rdx, -0xb8(%rbp)
orq %rcx, %rax
movq -0x78(%rbp), %r8
rolq $0x29, %r8
rolq $0x2, %rbx
movq -0xd8(%rbp), %rcx
rolq $0x3e, %rcx
movq -0x58(%rbp), %rsi
rolq $0x37, %rsi
xorq %r10, %rax
movq %rax, %r10
movq %rax, -0x88(%rbp)
movq -0xc0(%rbp), %rdx
rolq $0x27, %rdx
movq %rsi, %rax
notq %rax
movq %rbx, %r15
andq %r8, %r15
xorq %rdx, %r15
movq %r15, -0xe0(%rbp)
movq %rdx, %r13
movq %rdx, %r15
andq %rax, %r15
orq %r8, %r13
xorq %rax, %r13
movq %r13, -0xc0(%rbp)
movq %rsi, %rax
andq %rcx, %rax
xorq %rbx, %rax
movq %rax, -0x58(%rbp)
xorq %rcx, %r15
movq %r15, -0xd8(%rbp)
orq %rcx, %rbx
xorq %r8, %rbx
movq %rbx, -0x78(%rbp)
movq %r14, %rdx
xorq -0x98(%rbp), %rdx
movq %r12, %rax
xorq %rdi, %rax
xorq %r13, %rdx
xorq %rax, %rdx
movq -0xb0(%rbp), %rcx
leaq 0x95f7(%rip), %rax      # 0x24580
movq -0xf8(%rbp), %rsi
xorq 0x48(%rax,%rsi,8), %rcx
movq -0x50(%rbp), %r13
xorq -0x60(%rbp), %r13
movq %r9, %r14
xorq %r11, %r14
movq %r13, %r11
xorq %rbx, %r11
xorq %r14, %r11
rolq %r11
xorq %rdx, %r11
movq %rdx, %rax
rolq %rax
xorq -0xd0(%rbp), %rcx
movq %rcx, -0xb0(%rbp)
movq -0x30(%rbp), %r8
xorq -0x40(%rbp), %r8
movq %r10, %rdi
xorq -0x68(%rbp), %rdi
movq -0x58(%rbp), %rsi
movq %rsi, %rbx
xorq %rdi, %rbx
xorq %r8, %rbx
xorq %rax, %rbx
movq %rcx, %r9
movq -0x70(%rbp), %r10
xorq %r10, %r9
movq -0xa0(%rbp), %rax
movq -0x38(%rbp), %rdx
xorq %rdx, %rax
xorq %r15, %rax
xorq %r9, %rax
xorq %rsi, %r8
xorq %rdi, %r8
movq -0xa8(%rbp), %r9
movq -0x80(%rbp), %rsi
xorq %rsi, %r9
movq -0xe8(%rbp), %rdi
movq -0x48(%rbp), %r12
xorq %r12, %rdi
movq %r9, %r15
movq -0xe0(%rbp), %rcx
xorq %rcx, %r15
xorq %rdi, %r15
xorq %rcx, %rdi
xorq %r9, %rdi
rolq %r8
xorq %r8, %rdi
rolq %r15
movq -0x78(%rbp), %rcx
xorq %rcx, %r14
xorq %r13, %r14
xorq %rax, %r15
rolq %rax
xorq %rax, %r14
xorq %rbx, -0xb0(%rbp)
xorq %rbx, %r10
movq %r10, -0x70(%rbp)
xorq %rbx, %rdx
movq %rdx, -0x38(%rbp)
xorq %rbx, -0xa0(%rbp)
xorq -0xd8(%rbp), %rbx
xorq %r15, -0x98(%rbp)
movq -0xc8(%rbp), %rax
xorq %r15, %rax
xorq %r15, -0x90(%rbp)
movq -0xb8(%rbp), %r9
xorq %r15, %r9
xorq -0xc0(%rbp), %r15
xorq %r11, -0xa8(%rbp)
xorq %r11, %rsi
movq %rsi, -0x80(%rbp)
movq -0xe8(%rbp), %rdx
xorq %r11, %rdx
xorq %r11, %r12
movq %r12, -0x48(%rbp)
xorq -0xe0(%rbp), %r11
movq -0x50(%rbp), %r8
xorq %rdi, %r8
xorq %rdi, -0x60(%rbp)
movq -0x100(%rbp), %r13
xorq %rdi, %r13
movq -0xf0(%rbp), %r10
xorq %rdi, %r10
xorq %rcx, %rdi
xorq %r14, -0x40(%rbp)
xorq %r14, -0x30(%rbp)
xorq %r14, -0x68(%rbp)
xorq %r14, -0x88(%rbp)
xorq -0x58(%rbp), %r14
rolq $0x2c, %rax
rolq $0x2b, %rdx
rolq $0x15, %r10
rolq $0xe, %r14
movq %rax, %rsi
orq %rdx, %rsi
movq %rsi, -0xd0(%rbp)
movq %r14, %rsi
andq %r10, %rsi
xorq %rdx, %rsi
movq %rsi, -0x78(%rbp)
movq %rdx, %rsi
notq %rsi
orq %r10, %rsi
xorq %rax, %rsi
movq %rsi, -0xd8(%rbp)
movq -0xb0(%rbp), %rsi
andq %rsi, %rax
xorq %r14, %rax
movq %rax, -0xc8(%rbp)
orq %rsi, %r14
xorq %r10, %r14
movq %r14, -0xb8(%rbp)
movq -0x38(%rbp), %r10
rolq $0x3, %r10
rolq $0x2d, %r9
rolq $0x3d, %r11
rolq $0x14, -0x30(%rbp)
movq %r11, %rdx
notq %rdx
movq -0x30(%rbp), %rax
orq %r10, %rax
movq %rax, %rsi
movq %r9, %rax
andq %r10, %rax
orq %r9, %rdx
xorq %r10, %rdx
movq %rdx, -0x58(%rbp)
rolq $0x1c, %r8
xorq -0x30(%rbp), %rax
movq %rax, -0xe0(%rbp)
andq %r8, -0x30(%rbp)
xorq %r11, -0x30(%rbp)
xorq %r8, %rsi
movq %rsi, -0x50(%rbp)
orq %r8, %r11
rolq $0x12, %rbx
movq -0x98(%rbp), %r14
rolq %r14
movq -0x80(%rbp), %rdx
rolq $0x6, %rdx
rolq $0x19, %r13
xorq %r9, %r11
movq %r11, -0x38(%rbp)
movq -0x88(%rbp), %r10
rolq $0x8, %r10
movq %r10, %rax
notq %rax
movq %rdx, %r8
orq %r13, %r8
xorq %r14, %r8
movq %r8, -0x98(%rbp)
andq %r13, %r10
xorq %rdx, %r10
movq %r10, -0x88(%rbp)
movq %r14, %rsi
andq %r14, %rdx
orq %rbx, %rsi
xorq %rbx, %rdx
movq %rdx, -0x80(%rbp)
andq %rax, %rbx
xorq %r13, %rbx
movq %rbx, -0xe8(%rbp)
xorq %rax, %rsi
movq %rsi, -0xc0(%rbp)
movq -0x90(%rbp), %rdx
rolq $0xa, %rdx
movq -0x48(%rbp), %rcx
rolq $0xf, %rcx
rolq $0x38, %rdi
movq -0x40(%rbp), %r12
rolq $0x1b, %r12
movq %rdx, %r8
movq %rdx, %rsi
orq %rcx, %r8
movq %r8, %r9
notq %rcx
movq %rdi, %r8
orq %rcx, %r8
movq %r12, %rbx
andq %rdi, %rbx
xorq %rcx, %rbx
movq %rbx, -0xf0(%rbp)
movq -0x70(%rbp), %rdx
rolq $0x24, %rdx
xorq %rsi, %r8
movq %r8, -0x48(%rbp)
andq %rdx, %rsi
xorq %r12, %rsi
movq %rsi, -0x70(%rbp)
xorq %rdx, %r9
movq %r9, %r8
movq %r9, -0x90(%rbp)
orq %rdx, %r12
movq -0xa0(%rbp), %rsi
rolq $0x29, %rsi
rolq $0x2, %r15
movq -0x60(%rbp), %rdx
rolq $0x37, %rdx
xorq %rdi, %r12
movq %r12, -0x40(%rbp)
movq -0x68(%rbp), %r14
rolq $0x27, %r14
movq %rdx, %rax
notq %rax
movq %r15, %rcx
andq %rsi, %rcx
xorq %r14, %rcx
movq %rcx, -0x68(%rbp)
movq %r14, %rcx
andq %rax, %r14
orq %rsi, %rcx
movq %rsi, %rdi
xorq %rax, %rcx
movq %rcx, %r11
movq %rcx, -0xa0(%rbp)
movq -0xa8(%rbp), %rsi
rolq $0x3e, %rsi
movq %rdx, %rax
andq %rsi, %rax
xorq %r15, %rax
movq %rax, %rdx
xorq %rsi, %r14
movq %r14, -0x100(%rbp)
orq %rsi, %r15
xorq %rdi, %r15
movq %r15, %rsi
movq %r15, -0xa8(%rbp)
leaq 0x925d(%rip), %rax      # 0x24580
movq -0xf8(%rbp), %rcx
movq -0xd0(%rbp), %r9
xorq 0x50(%rax,%rcx,8), %r9
xorq -0xb0(%rbp), %r9
movq %r9, %rcx
movq %r9, -0xd0(%rbp)
movq -0xe0(%rbp), %r9
xorq -0xd8(%rbp), %r9
xorq %r8, %r10
xorq %r11, %r9
xorq %r10, %r9
movq -0xb8(%rbp), %r15
xorq -0x38(%rbp), %r15
xorq -0xc0(%rbp), %rbx
movq %r15, %rdi
xorq %rsi, %rdi
xorq %rbx, %rdi
rolq %rdi
xorq %r9, %rdi
movq %r9, %rax
rolq %rax
movq -0x30(%rbp), %r8
xorq -0xc8(%rbp), %r8
xorq -0x80(%rbp), %r12
movq %rdx, %rsi
movq %rdx, -0x60(%rbp)
movq %rdx, %r11
xorq %r12, %r11
xorq %r8, %r11
xorq %rax, %r11
movq %rcx, %r13
movq -0x50(%rbp), %rdx
xorq %rdx, %r13
movq -0x70(%rbp), %r9
movq %r9, %rax
xorq -0x98(%rbp), %rax
xorq %r14, %rax
xorq %r13, %rax
xorq %rsi, %r8
xorq %r12, %r8
movq -0x78(%rbp), %r10
movq -0x58(%rbp), %rsi
xorq %rsi, %r10
movq -0xe8(%rbp), %r13
movq -0x48(%rbp), %r14
xorq %r14, %r13
movq %r10, %r12
movq -0x68(%rbp), %rcx
xorq %rcx, %r12
xorq %r13, %r12
xorq %rcx, %r13
xorq %r10, %r13
rolq %r8
xorq %r8, %r13
movq -0xa8(%rbp), %rcx
xorq %rcx, %rbx
xorq %r15, %rbx
rolq %r12
xorq %rax, %r12
rolq %rax
xorq %rax, %rbx
xorq %r11, -0xd0(%rbp)
xorq %r11, %rdx
movq %rdx, -0x50(%rbp)
movq -0x98(%rbp), %r8
xorq %r11, %r8
xorq %r11, %r9
movq %r9, -0x70(%rbp)
xorq -0x100(%rbp), %r11
movq -0xd8(%rbp), %r10
xorq %r12, %r10
movq -0xe0(%rbp), %rax
xorq %r12, %rax
xorq %r12, -0x88(%rbp)
xorq %r12, -0x90(%rbp)
xorq -0xa0(%rbp), %r12
xorq %rdi, -0x78(%rbp)
xorq %rdi, %rsi
movq %rsi, -0x58(%rbp)
movq -0xe8(%rbp), %r15
xorq %rdi, %r15
xorq %rdi, %r14
movq %r14, -0x48(%rbp)
xorq -0x68(%rbp), %rdi
movq -0xb8(%rbp), %rsi
xorq %r13, %rsi
xorq %r13, -0x38(%rbp)
xorq %r13, -0xc0(%rbp)
movq -0xf0(%rbp), %rdx
xorq %r13, %rdx
xorq %rcx, %r13
movq -0xc8(%rbp), %r14
xorq %rbx, %r14
xorq %rbx, -0x30(%rbp)
xorq %rbx, -0x80(%rbp)
movq -0x40(%rbp), %r9
xorq %rbx, %r9
xorq -0x60(%rbp), %rbx
rolq $0x2c, %rax
rolq $0x2b, %r15
rolq $0x15, %rdx
rolq $0xe, %rbx
movq %rax, %rcx
orq %r15, %rcx
movq %rcx, -0xb0(%rbp)
movq %rbx, %rcx
andq %rdx, %rcx
xorq %r15, %rcx
movq %rcx, -0xa8(%rbp)
movq %r15, %rcx
notq %rcx
orq %rdx, %rcx
xorq %rax, %rcx
movq %rcx, -0xd8(%rbp)
movq -0xd0(%rbp), %rcx
andq %rcx, %rax
xorq %rbx, %rax
movq %rax, -0xe0(%rbp)
orq %rcx, %rbx
xorq %rdx, %rbx
movq %rbx, -0x68(%rbp)
movq %r8, %rbx
rolq $0x3, %rbx
movq -0x90(%rbp), %r15
rolq $0x2d, %r15
rolq $0x3d, %rdi
rolq $0x14, -0x30(%rbp)
movq %rdi, %rdx
notq %rdx
movq -0x30(%rbp), %rax
orq %rbx, %rax
movq %rax, %rcx
movq %r15, %rax
andq %rbx, %rax
orq %r15, %rdx
xorq %rbx, %rdx
movq %rdx, -0x90(%rbp)
rolq $0x1c, %rsi
xorq -0x30(%rbp), %rax
movq %rax, -0x60(%rbp)
andq %rsi, -0x30(%rbp)
xorq %rdi, -0x30(%rbp)
xorq %rsi, %rcx
movq %rcx, -0x98(%rbp)
orq %rsi, %rdi
rolq $0x12, %r11
rolq %r10
movq -0x58(%rbp), %rdx
rolq $0x6, %rdx
movq -0xc0(%rbp), %r8
rolq $0x19, %r8
movq %r9, %rcx
rolq $0x8, %rcx
xorq %r15, %rdi
movq %rdi, -0xc0(%rbp)
movq %rcx, %rax
notq %rax
movq %rdx, %rsi
orq %r8, %rsi
xorq %r10, %rsi
movq %rsi, -0xf0(%rbp)
movq %r10, %rdi
andq %r8, %rcx
movq %r8, %r10
xorq %rdx, %rcx
movq %rcx, %r8
movq %rcx, -0x40(%rbp)
movq %rdi, %rcx
andq %rdi, %rdx
orq %r11, %rcx
xorq %r11, %rdx
movq %rdx, -0x58(%rbp)
andq %rax, %r11
xorq %r10, %r11
movq %r11, -0x100(%rbp)
xorq %rax, %rcx
movq %rcx, %r11
movq %rcx, -0xe8(%rbp)
movq -0x88(%rbp), %rdx
rolq $0xa, %rdx
movq -0x48(%rbp), %rcx
rolq $0xf, %rcx
rolq $0x38, %r13
rolq $0x1b, %r14
movq %rdx, %rsi
orq %rcx, %rsi
movq %rsi, %rdi
notq %rcx
movq %r13, %rsi
orq %rcx, %rsi
movq %r14, %r10
andq %r13, %r10
xorq %rcx, %r10
movq %r10, -0x48(%rbp)
movq -0x50(%rbp), %rcx
rolq $0x24, %rcx
xorq %rdx, %rsi
movq %rsi, -0xb8(%rbp)
andq %rcx, %rdx
xorq %r14, %rdx
movq %rdx, -0xa0(%rbp)
xorq %rcx, %rdi
movq %rdi, %rbx
movq %rdi, -0x88(%rbp)
orq %rcx, %r14
movq -0x70(%rbp), %rdi
rolq $0x29, %rdi
rolq $0x2, %r12
movq -0x78(%rbp), %rcx
rolq $0x3e, %rcx
movq -0x38(%rbp), %rdx
rolq $0x37, %rdx
xorq %r13, %r14
movq %r14, %rsi
movq %r14, -0xc8(%rbp)
movq -0x80(%rbp), %r14
rolq $0x27, %r14
movq %rdx, %rax
notq %rax
movq %r12, %r9
andq %rdi, %r9
xorq %r14, %r9
movq %r9, -0x78(%rbp)
movq %r14, %r9
andq %rax, %r14
movq %r14, %r15
movq %r9, %r14
orq %rdi, %r14
xorq %rax, %r14
movq %r14, -0x70(%rbp)
movq %rdx, %rax
andq %rcx, %rax
xorq %r12, %rax
movq %rax, -0x38(%rbp)
xorq %rcx, %r15
movq %r15, -0x80(%rbp)
orq %rcx, %r12
xorq %rdi, %r12
movq %r12, -0x50(%rbp)
movq -0x60(%rbp), %rdx
xorq -0xd8(%rbp), %rdx
xorq %rbx, %r8
xorq %r14, %rdx
xorq %r8, %rdx
leaq 0x8e85(%rip), %rax      # 0x24580
movq -0xf8(%rbp), %rcx
movq -0xb0(%rbp), %rdi
xorq 0x58(%rax,%rcx,8), %rdi
movq -0x68(%rbp), %r15
xorq -0xc0(%rbp), %r15
movq %r10, %r13
xorq %r11, %r13
movq %r15, %r10
xorq %r12, %r10
xorq %r13, %r10
rolq %r10
xorq %rdx, %r10
rolq %rdx
movq %rdi, %rcx
xorq -0xd0(%rbp), %rcx
movq %rcx, -0xb0(%rbp)
movq -0x30(%rbp), %rax
xorq -0xe0(%rbp), %rax
movq %rsi, %r12
xorq -0x58(%rbp), %r12
movq -0x38(%rbp), %rdi
movq %rdi, %r11
xorq %r12, %r11
xorq %rax, %r11
xorq %rdx, %r11
movq %rcx, %rdx
movq -0x98(%rbp), %rsi
xorq %rsi, %rdx
movq -0xa0(%rbp), %r9
movq %r9, %r8
xorq -0xf0(%rbp), %r8
xorq -0x80(%rbp), %r8
xorq %rdx, %r8
xorq %rdi, %rax
xorq %r12, %rax
movq -0xa8(%rbp), %r12
movq -0x90(%rbp), %rdi
xorq %rdi, %r12
movq -0x100(%rbp), %rdx
movq -0xb8(%rbp), %rbx
xorq %rbx, %rdx
movq %r12, %r14
movq -0x78(%rbp), %rcx
xorq %rcx, %r14
xorq %rdx, %r14
xorq %rcx, %rdx
xorq %r12, %rdx
rolq %rax
xorq %rax, %rdx
rolq %r14
movq -0x50(%rbp), %rcx
xorq %rcx, %r13
xorq %r15, %r13
xorq %r8, %r14
rolq %r8
xorq %r8, %r13
xorq %r11, -0xb0(%rbp)
xorq %r11, %rsi
movq %rsi, -0x98(%rbp)
movq -0xf0(%rbp), %r12
xorq %r11, %r12
xorq %r11, %r9
movq %r9, -0xa0(%rbp)
xorq -0x80(%rbp), %r11
movq -0xd8(%rbp), %r8
xorq %r14, %r8
movq -0x60(%rbp), %rax
xorq %r14, %rax
xorq %r14, -0x40(%rbp)
xorq %r14, -0x88(%rbp)
xorq -0x70(%rbp), %r14
xorq %r10, -0xa8(%rbp)
xorq %r10, %rdi
movq %rdi, -0x90(%rbp)
movq -0x100(%rbp), %rsi
xorq %r10, %rsi
xorq %r10, %rbx
movq %rbx, -0xb8(%rbp)
xorq -0x78(%rbp), %r10
movq -0x68(%rbp), %rbx
xorq %rdx, %rbx
xorq %rdx, -0xc0(%rbp)
xorq %rdx, -0xe8(%rbp)
movq -0x48(%rbp), %rdi
xorq %rdx, %rdi
xorq %rcx, %rdx
xorq %r13, -0xe0(%rbp)
xorq %r13, -0x30(%rbp)
xorq %r13, -0x58(%rbp)
xorq %r13, -0xc8(%rbp)
xorq -0x38(%rbp), %r13
rolq $0x2c, %rax
rolq $0x2b, %rsi
rolq $0x15, %rdi
rolq $0xe, %r13
movq %rax, %r9
orq %rsi, %r9
movq %r13, %rcx
andq %rdi, %rcx
xorq %rsi, %rcx
movq %rcx, -0x70(%rbp)
movq %rsi, %rcx
notq %rcx
orq %rdi, %rcx
xorq %rax, %rcx
movq %rcx, -0x38(%rbp)
movq -0xb0(%rbp), %rcx
andq %rcx, %rax
xorq %r13, %rax
movq %rax, -0x60(%rbp)
orq %rcx, %r13
xorq %rdi, %r13
movq %r13, -0xd8(%rbp)
movq %r12, %rdi
rolq $0x3, %rdi
movq -0x88(%rbp), %r15
rolq $0x2d, %r15
rolq $0x3d, %r10
rolq $0x14, -0x30(%rbp)
movq %r10, %rsi
notq %rsi
movq -0x30(%rbp), %rax
orq %rdi, %rax
movq %rax, %rcx
movq %r15, %rax
andq %rdi, %rax
orq %r15, %rsi
xorq %rdi, %rsi
movq %rsi, -0x88(%rbp)
movq %rbx, %rsi
rolq $0x1c, %rsi
xorq -0x30(%rbp), %rax
movq %rax, -0x68(%rbp)
andq %rsi, -0x30(%rbp)
xorq %r10, -0x30(%rbp)
xorq %rsi, %rcx
movq %rcx, -0x50(%rbp)
orq %rsi, %r10
rolq $0x12, %r11
rolq %r8
movq -0x90(%rbp), %rsi
rolq $0x6, %rsi
movq -0xe8(%rbp), %rbx
rolq $0x19, %rbx
xorq %r15, %r10
movq %r10, %r12
movq %r10, -0x80(%rbp)
movq -0xc8(%rbp), %rcx
rolq $0x8, %rcx
movq %rcx, %rax
notq %rax
movq %rsi, %rdi
orq %rbx, %rdi
xorq %r8, %rdi
movq %rdi, -0x48(%rbp)
andq %rbx, %rcx
xorq %rsi, %rcx
movq %rcx, %rdi
movq %rcx, -0xc8(%rbp)
andq %r8, %rsi
orq %r11, %r8
xorq %r11, %rsi
movq %rsi, -0x90(%rbp)
andq %rax, %r11
xorq %rbx, %r11
movq %r11, -0xe8(%rbp)
xorq %rax, %r8
movq %r8, -0xd0(%rbp)
movq -0x40(%rbp), %r10
rolq $0xa, %r10
movq -0xb8(%rbp), %r13
rolq $0xf, %r13
rolq $0x38, %rdx
movq -0xe0(%rbp), %r15
rolq $0x1b, %r15
movq %r10, %rcx
orq %r13, %rcx
movq %rcx, %r11
notq %r13
movq %rdx, %rsi
orq %r13, %rsi
movq %r15, %rbx
andq %rdx, %rbx
xorq %r13, %rbx
movq %rbx, -0xb8(%rbp)
movq -0x98(%rbp), %rcx
rolq $0x24, %rcx
xorq %r10, %rsi
movq %rsi, -0x40(%rbp)
movq %r10, %rsi
andq %rcx, %rsi
xorq %r15, %rsi
movq %rsi, -0x78(%rbp)
xorq %rcx, %r11
movq %r11, -0x98(%rbp)
orq %rcx, %r15
movq -0xa0(%rbp), %rsi
rolq $0x29, %rsi
rolq $0x2, %r14
movq -0xc0(%rbp), %rcx
rolq $0x37, %rcx
xorq %rdx, %r15
movq %r15, -0xe0(%rbp)
movq -0x58(%rbp), %r13
rolq $0x27, %r13
movq %rcx, %rax
movq %rcx, %rdx
notq %rax
movq %r14, %r8
movq %rsi, %rcx
andq %rsi, %r8
xorq %r13, %r8
movq %r8, -0x58(%rbp)
movq %r13, %rsi
andq %rax, %r13
movq %rsi, %r8
orq %rcx, %r8
movq %rcx, %rsi
xorq %rax, %r8
movq %r8, %r10
movq %r8, -0xa0(%rbp)
movq -0xa8(%rbp), %rcx
rolq $0x3e, %rcx
movq %rdx, %rax
andq %rcx, %rax
xorq %r14, %rax
movq %rax, -0xc0(%rbp)
xorq %rcx, %r13
movq %r13, %rdx
movq %r13, -0xf0(%rbp)
orq %rcx, %r14
xorq %rsi, %r14
movq %r14, %rsi
movq %r14, -0xa8(%rbp)
leaq 0x8ab9(%rip), %rax      # 0x24580
movq -0xf8(%rbp), %rcx
xorq 0x60(%rax,%rcx,8), %r9
xorq -0xb0(%rbp), %r9
movq %r9, -0xb0(%rbp)
movq -0x68(%rbp), %r8
xorq -0x38(%rbp), %r8
xorq %r11, %rdi
xorq %r10, %r8
xorq %rdi, %r8
movq -0xd8(%rbp), %r11
xorq %r12, %r11
movq %rbx, %r12
xorq -0xd0(%rbp), %r12
movq %r11, %r14
xorq %rsi, %r14
xorq %r12, %r14
rolq %r14
xorq %r8, %r14
rolq %r8
movq -0x30(%rbp), %rax
xorq -0x60(%rbp), %rax
xorq -0x90(%rbp), %r15
movq -0xc0(%rbp), %rbx
movq %rbx, %r13
xorq %r15, %r13
xorq %rax, %r13
xorq %r8, %r13
movq %r9, %r8
movq -0x50(%rbp), %rsi
xorq %rsi, %r8
movq -0x78(%rbp), %r10
movq %r10, %rcx
movq -0x48(%rbp), %rdi
xorq %rdi, %rcx
xorq %rdx, %rcx
xorq %r8, %rcx
xorq %rbx, %rax
xorq %r15, %rax
movq -0x70(%rbp), %r15
movq %r15, %r9
xorq -0x88(%rbp), %r9
movq -0xe8(%rbp), %rbx
xorq -0x40(%rbp), %rbx
movq %r9, %r8
movq -0x58(%rbp), %rdx
xorq %rdx, %r8
xorq %rbx, %r8
xorq %rdx, %rbx
xorq %r9, %rbx
rolq %rax
xorq %rax, %rbx
movq -0xa8(%rbp), %rdx
xorq %rdx, %r12
xorq %r11, %r12
rolq %r8
xorq %rcx, %r8
rolq %rcx
xorq %rcx, %r12
movq -0xb0(%rbp), %r9
xorq %r13, %r9
xorq %r13, %rsi
movq %rsi, -0x50(%rbp)
xorq %r13, %rdi
movq %rdi, -0x48(%rbp)
xorq %r13, %r10
movq %r10, -0x78(%rbp)
xorq -0xf0(%rbp), %r13
xorq %r8, -0x38(%rbp)
movq -0x68(%rbp), %rax
xorq %r8, %rax
xorq %r8, -0xc8(%rbp)
xorq %r8, -0x98(%rbp)
xorq -0xa0(%rbp), %r8
xorq %r14, %r15
movq %r15, -0x70(%rbp)
xorq %r14, -0x88(%rbp)
movq -0xe8(%rbp), %rdi
xorq %r14, %rdi
xorq %r14, -0x40(%rbp)
xorq -0x58(%rbp), %r14
movq -0xd8(%rbp), %r11
xorq %rbx, %r11
xorq %rbx, -0x80(%rbp)
xorq %rbx, -0xd0(%rbp)
movq -0xb8(%rbp), %rsi
xorq %rbx, %rsi
xorq %rdx, %rbx
xorq %r12, -0x60(%rbp)
xorq %r12, -0x30(%rbp)
xorq %r12, -0x90(%rbp)
movq -0xe0(%rbp), %r15
xorq %r12, %r15
xorq -0xc0(%rbp), %r12
rolq $0x2c, %rax
rolq $0x2b, %rdi
rolq $0x15, %rsi
movq %rsi, -0xb8(%rbp)
rolq $0xe, %r12
movq %rax, %rcx
orq %rdi, %rcx
movq %rcx, %r10
movq %rsi, %rcx
andq %r12, %rcx
xorq %rdi, %rcx
movq %rcx, -0xb0(%rbp)
movq %rdi, %rcx
notq %rcx
orq %rsi, %rcx
xorq %rax, %rcx
movq %rcx, -0xa8(%rbp)
andq %r9, %rax
movq %rax, %rdx
leaq 0x88df(%rip), %rax      # 0x24580
movq -0xf8(%rbp), %rcx
xorq 0x68(%rax,%rcx,8), %r10
xorq %r9, %r10
movq %r10, -0xd8(%rbp)
orq %r12, %r9
xorq -0xb8(%rbp), %r9
movq %r9, -0xb8(%rbp)
movq -0x48(%rbp), %r10
rolq $0x3, %r10
movq -0x98(%rbp), %rdi
rolq $0x2d, %rdi
rolq $0x3d, %r14
rolq $0x1c, %r11
xorq %r12, %rdx
movq %rdx, -0x68(%rbp)
rolq $0x14, -0x30(%rbp)
movq %r10, %rax
orq -0x30(%rbp), %rax
xorq %r11, %rax
movq %rax, -0xa0(%rbp)
movq %rdi, %rax
andq %r10, %rax
xorq -0x30(%rbp), %rax
movq %rax, -0xe0(%rbp)
andq %r11, -0x30(%rbp)
orq %r14, %r11
xorq %r14, -0x30(%rbp)
notq %r14
orq %rdi, %r14
xorq %r10, %r14
movq %r14, -0x58(%rbp)
xorq %rdi, %r11
movq %r11, -0xc0(%rbp)
rolq $0x12, %r13
movq -0x38(%rbp), %rsi
rolq %rsi
movq -0x88(%rbp), %rdi
rolq $0x6, %rdi
movq -0xd0(%rbp), %rdx
rolq $0x19, %rdx
movq %r15, %rax
rolq $0x8, %rax
movq %rdx, %r15
andq %rax, %r15
notq %rax
movq %r13, %r9
andq %rax, %r9
movq %rax, %rcx
xorq %rdx, %r9
movq %r9, -0xd0(%rbp)
movq %rdi, %rax
orq %rdi, %rdx
xorq %rsi, %rdx
movq %rdx, -0x38(%rbp)
xorq %rdi, %r15
movq %r15, -0x48(%rbp)
andq %rsi, %rax
xorq %r13, %rax
movq %rax, -0x88(%rbp)
orq %rsi, %r13
movq -0x50(%rbp), %rsi
rolq $0x24, %rsi
movq -0xc8(%rbp), %rdi
rolq $0xa, %rdi
movq -0x40(%rbp), %rdx
rolq $0xf, %rdx
rolq $0x38, %rbx
movq -0x60(%rbp), %rax
rolq $0x1b, %rax
xorq %rcx, %r13
movq %r13, -0x40(%rbp)
movq %rdi, %r12
orq %rdx, %r12
notq %rdx
movq %rbx, %rcx
orq %rdx, %rcx
movq %rbx, %r10
andq %rax, %r10
xorq %rdx, %r10
movq %r10, -0x98(%rbp)
xorq %rdi, %rcx
movq %rcx, %rdx
movq %rcx, -0x50(%rbp)
andq %rsi, %rdi
xorq %rax, %rdi
movq %rdi, %r13
movq %rdi, -0xe8(%rbp)
xorq %rsi, %r12
movq %r12, -0xc8(%rbp)
orq %rsi, %rax
xorq %rbx, %rax
movq %rax, %r10
movq %rax, -0x60(%rbp)
movq -0x78(%rbp), %rbx
rolq $0x29, %rbx
rolq $0x2, %r8
movq -0x70(%rbp), %rsi
rolq $0x3e, %rsi
movq -0x80(%rbp), %rcx
rolq $0x37, %rcx
movq -0x90(%rbp), %r11
rolq $0x27, %r11
movq %rcx, %rax
notq %rax
andq %rsi, %rcx
xorq %r8, %rcx
movq %rcx, -0x80(%rbp)
movq %r8, %rdi
andq %rbx, %r8
orq %rsi, %rdi
xorq %rbx, %rdi
movq %rdi, -0x90(%rbp)
orq %r11, %rbx
xorq %r11, %r8
movq %r8, -0xf0(%rbp)
andq %rax, %r11
xorq %rsi, %r11
xorq %rax, %rbx
movq %rbx, -0x78(%rbp)
movq -0xe0(%rbp), %r14
xorq -0xa8(%rbp), %r14
xorq %r15, %r12
movq %rbx, %rax
xorq %r14, %rax
xorq %r12, %rax
rolq %rax
movq -0x30(%rbp), %r15
xorq -0x68(%rbp), %r15
xorq -0x88(%rbp), %r10
movq %r15, %rsi
xorq %r10, %rsi
xorq %rcx, %rsi
xorq %rax, %rsi
movq -0x58(%rbp), %r9
xorq -0xb0(%rbp), %r9
movq %rdx, %rdi
xorq -0xd0(%rbp), %rdi
movq %r8, %rdx
xorq %r9, %rdx
xorq %rdi, %rdx
rolq %rdx
movq -0xa0(%rbp), %r8
xorq -0xd8(%rbp), %r8
movq %r13, %rcx
xorq -0x38(%rbp), %rcx
movq %r8, %r13
xorq %rcx, %r13
xorq %rdx, %r13
movq -0xc0(%rbp), %rdx
xorq -0xb8(%rbp), %rdx
movq -0x98(%rbp), %rbx
xorq -0x40(%rbp), %rbx
movq -0x90(%rbp), %rax
xorq %rdx, %rax
xorq %rbx, %rax
rolq %rax
xorq %r14, %r12
movq -0x78(%rbp), %r14
xorq %r14, %r12
xorq %rax, %r12
xorq -0x80(%rbp), %r15
xorq %r10, %r15
xorq %r9, %rdi
rolq %r15
movq -0xf0(%rbp), %r9
xorq %r9, %rdi
xorq %r15, %rdi
xorq %r11, %rcx
xorq %r8, %rcx
xorq %rdx, %rbx
rolq %rcx
movq -0x90(%rbp), %r10
xorq %r10, %rbx
xorq %rcx, %rbx
xorq %r11, %r13
movq -0xd8(%rbp), %rdx
xorq %rsi, %rdx
xorq %rsi, -0xa0(%rbp)
xorq %rsi, -0x38(%rbp)
xorq %rsi, -0xe8(%rbp)
xorq %r11, %rsi
movq %rsi, %r11
xorq %r13, -0xa8(%rbp)
movq -0xe0(%rbp), %rcx
xorq %r13, %rcx
xorq %r13, -0x48(%rbp)
xorq %r13, -0xc8(%rbp)
xorq %r14, %r13
movq %r13, -0x70(%rbp)
xorq %r12, -0xb0(%rbp)
xorq %r12, -0x58(%rbp)
movq -0xd0(%rbp), %rsi
xorq %r12, %rsi
xorq %r12, -0x50(%rbp)
xorq %r9, %r12
movq -0xb8(%rbp), %r9
xorq %rdi, %r9
xorq %rdi, -0xc0(%rbp)
xorq %rdi, -0x40(%rbp)
movq -0x98(%rbp), %r8
xorq %rdi, %r8
xorq %r10, %rdi
movq %rdi, %r15
xorq %rbx, -0x68(%rbp)
xorq %rbx, -0x30(%rbp)
xorq %rbx, -0x88(%rbp)
xorq %rbx, -0x60(%rbp)
movq %rcx, %r13
rolq $0x2c, %r13
movq %rsi, %rdi
rolq $0x2b, %rdi
rolq $0x15, %r8
xorq -0x80(%rbp), %rbx
rolq $0xe, %rbx
movq %r13, %rsi
orq %rdi, %rsi
movq %r8, %rcx
andq %rbx, %rcx
xorq %rdi, %rcx
movq %rcx, -0x98(%rbp)
movq %rdi, %rcx
notq %rcx
orq %r8, %rcx
movq %r8, %rdi
xorq %r13, %rcx
movq %rcx, -0xd0(%rbp)
andq %rdx, %r13
leaq 0x8537(%rip), %rax      # 0x24580
movq -0xf8(%rbp), %r8
xorq 0x70(%rax,%r8,8), %rsi
xorq %rdx, %rsi
movq %rsi, -0xf0(%rbp)
orq %rbx, %rdx
xorq %rdi, %rdx
movq %rdx, -0x80(%rbp)
xorq %rbx, %r13
movq %r13, -0xe0(%rbp)
movq -0x38(%rbp), %rdx
rolq $0x3, %rdx
movq -0xc8(%rbp), %rsi
rolq $0x2d, %rsi
rolq $0x3d, %r12
rolq $0x1c, %r9
rolq $0x14, -0x30(%rbp)
movq %rdx, %rax
orq -0x30(%rbp), %rax
xorq %r9, %rax
movq %rax, -0xb8(%rbp)
movq %rsi, %r10
andq %rdx, %r10
xorq -0x30(%rbp), %r10
movq %r10, -0x90(%rbp)
andq %r9, -0x30(%rbp)
orq %r12, %r9
xorq %r12, -0x30(%rbp)
notq %r12
orq %rsi, %r12
xorq %rdx, %r12
movq %r12, -0xc8(%rbp)
rolq $0x12, %r11
movq -0xa8(%rbp), %rdx
rolq %rdx
movq -0x58(%rbp), %rcx
rolq $0x6, %rcx
movq -0x40(%rbp), %r8
rolq $0x19, %r8
xorq %rsi, %r9
movq %r9, -0x40(%rbp)
movq -0x60(%rbp), %rax
rolq $0x8, %rax
movq %r8, %rsi
andq %rax, %rsi
notq %rax
movq %r11, %rdi
andq %rax, %rdi
xorq %r8, %rdi
movq %rdi, -0xa8(%rbp)
movq %r8, %rdi
orq %rcx, %rdi
xorq %rdx, %rdi
movq %rdi, -0x38(%rbp)
xorq %rcx, %rsi
movq %rsi, %rdi
movq %rsi, -0xd8(%rbp)
andq %rdx, %rcx
xorq %r11, %rcx
movq %rcx, -0x58(%rbp)
orq %rdx, %r11
xorq %rax, %r11
movq %r11, -0x60(%rbp)
movq -0x48(%rbp), %rdx
rolq $0xa, %rdx
movq -0x50(%rbp), %rcx
rolq $0xf, %rcx
rolq $0x38, %r15
movq -0x68(%rbp), %rax
rolq $0x1b, %rax
movq %rdx, %rsi
orq %rcx, %rsi
movq %rsi, %r8
notq %rcx
movq %r15, %rsi
orq %rcx, %rsi
movq %r15, %r12
andq %rax, %r12
xorq %rcx, %r12
movq %r12, -0x100(%rbp)
movq -0xa0(%rbp), %rcx
rolq $0x24, %rcx
xorq %rdx, %rsi
movq %rsi, -0x50(%rbp)
andq %rcx, %rdx
xorq %rax, %rdx
movq %rdx, -0x48(%rbp)
xorq %rcx, %r8
movq %r8, %rbx
movq %r8, -0x78(%rbp)
orq %rcx, %rax
movq -0xe8(%rbp), %r11
rolq $0x29, %r11
movq -0x70(%rbp), %r8
rolq $0x2, %r8
movq -0xb0(%rbp), %r9
rolq $0x3e, %r9
movq -0xc0(%rbp), %rsi
rolq $0x37, %rsi
movq -0x88(%rbp), %r14
rolq $0x27, %r14
xorq %r15, %rax
movq %rax, -0x68(%rbp)
movq %rsi, %rcx
notq %rcx
andq %r9, %rsi
xorq %r8, %rsi
movq %r8, %r15
andq %r11, %r15
orq %r9, %r8
movq %r9, %rdx
xorq %r11, %r8
movq %r8, -0x70(%rbp)
movq %r14, %r9
orq %r14, %r11
xorq %r14, %r15
movq %r15, -0x88(%rbp)
andq %rcx, %r9
xorq %rdx, %r9
movq %r9, -0xb0(%rbp)
xorq %rcx, %r11
movq %r10, %rdx
xorq -0xd0(%rbp), %rdx
xorq %rdi, %rbx
movq %r11, %r15
movq %r11, -0xa0(%rbp)
xorq %rdx, %r15
xorq %rbx, %r15
rolq %r15
movq -0x30(%rbp), %r14
xorq %r13, %r14
movq %rax, %rcx
xorq -0x58(%rbp), %rcx
movq %r14, %r10
xorq %rcx, %r10
movq %rsi, -0xc0(%rbp)
xorq %rsi, %r10
xorq %r15, %r10
xorq %rdx, %rbx
movq -0x40(%rbp), %r15
xorq -0x80(%rbp), %r15
movq %r12, %r9
xorq -0x60(%rbp), %r9
movq %r8, %r12
xorq %r15, %r12
xorq %r9, %r12
rolq %r12
xorq %r11, %rbx
xorq %r12, %rbx
xorq %rsi, %r14
xorq %rcx, %r14
movq -0xc8(%rbp), %rcx
movq -0x98(%rbp), %r12
xorq %r12, %rcx
movq -0x50(%rbp), %rsi
xorq -0xa8(%rbp), %rsi
movq -0x88(%rbp), %rax
movq %rax, %r13
xorq %rcx, %r13
xorq %rsi, %r13
xorq %rcx, %rsi
rolq %r14
xorq %rax, %rsi
xorq %r14, %rsi
rolq %r13
movq -0xb8(%rbp), %rdi
movq %rdi, %rcx
movq -0xf0(%rbp), %rax
xorq %rax, %rcx
movq -0x48(%rbp), %r8
movq %r8, %r14
movq -0x38(%rbp), %rdx
xorq %rdx, %r14
xorq %rcx, %r13
movq -0xb0(%rbp), %r11
xorq %r11, %r14
xorq %r14, %r13
xorq %rcx, %r14
rolq %r14
xorq %r15, %r9
movq -0x70(%rbp), %r15
xorq %r15, %r9
xorq %r14, %r9
xorq %r10, %rax
movq %rax, %r14
xorq %r10, %rdi
movq %rdi, -0xb8(%rbp)
xorq %r10, %rdx
movq %rdx, -0x38(%rbp)
xorq %r10, %r8
movq %r8, -0x48(%rbp)
xorq %r11, %r10
xorq %r13, -0xd0(%rbp)
movq -0x90(%rbp), %rcx
xorq %r13, %rcx
xorq %r13, -0xd8(%rbp)
xorq %r13, -0x78(%rbp)
xorq -0xa0(%rbp), %r13
movq %r13, -0xe8(%rbp)
xorq %rbx, %r12
movq %r12, -0x98(%rbp)
xorq %rbx, -0xc8(%rbp)
movq -0xa8(%rbp), %r8
xorq %rbx, %r8
xorq %rbx, -0x50(%rbp)
xorq -0x88(%rbp), %rbx
movq -0x80(%rbp), %rdi
xorq %rsi, %rdi
movq -0x40(%rbp), %rax
xorq %rsi, %rax
movq %rax, -0x40(%rbp)
xorq %rsi, -0x60(%rbp)
movq -0x100(%rbp), %r12
xorq %rsi, %r12
xorq %r15, %rsi
movq %rsi, %r11
movq -0xe0(%rbp), %rdx
xorq %r9, %rdx
xorq %r9, -0x30(%rbp)
xorq %r9, -0x58(%rbp)
xorq %r9, -0x68(%rbp)
xorq -0xc0(%rbp), %r9
rolq $0x2c, %rcx
rolq $0x2b, %r8
rolq $0x15, %r12
rolq $0xe, %r9
movq %rcx, %rsi
orq %r8, %rsi
movq %r12, %rax
andq %r9, %rax
xorq %r8, %rax
movq %rax, -0xa8(%rbp)
notq %r8
orq %r12, %r8
xorq %rcx, %r8
movq %r8, -0x80(%rbp)
andq %r14, %rcx
movq -0xf8(%rbp), %r8
leaq 0x8178(%rip), %rax      # 0x24580
xorq 0x78(%rax,%r8,8), %rsi
movq %r14, %rax
xorq %r14, %rsi
movq %rsi, -0xb0(%rbp)
orq %r9, %rax
xorq %r12, %rax
movq %rax, -0x70(%rbp)
movq -0x38(%rbp), %r14
rolq $0x3, %r14
movq -0x78(%rbp), %r13
rolq $0x2d, %r13
rolq $0x3d, %rbx
movq %rdi, %rsi
rolq $0x1c, %rsi
xorq %r9, %rcx
movq %rcx, -0x90(%rbp)
movq -0x30(%rbp), %rcx
rolq $0x14, %rcx
movq %r14, %rax
orq %rcx, %rax
xorq %rsi, %rax
movq %rax, -0xa0(%rbp)
movq %r13, %rax
andq %r14, %rax
xorq %rcx, %rax
movq %rax, -0x88(%rbp)
andq %rsi, %rcx
movq %rsi, %rax
orq %rbx, %rax
xorq %rbx, %rcx
movq %rcx, -0x30(%rbp)
notq %rbx
orq %r13, %rbx
xorq %r14, %rbx
movq %rbx, %r14
xorq %r13, %rax
movq %rax, -0x38(%rbp)
rolq $0x12, %r10
movq -0xd0(%rbp), %rsi
rolq %rsi
movq -0xc8(%rbp), %rcx
rolq $0x6, %rcx
movq -0x60(%rbp), %r9
rolq $0x19, %r9
movq -0x68(%rbp), %rax
rolq $0x8, %rax
movq %r9, %rbx
andq %rax, %rbx
notq %rax
movq %r10, %r15
andq %rax, %r15
xorq %r9, %r15
orq %rcx, %r9
xorq %rsi, %r9
movq %r9, -0x68(%rbp)
xorq %rcx, %rbx
movq %rbx, -0x78(%rbp)
andq %rsi, %rcx
xorq %r10, %rcx
movq %rcx, -0xc8(%rbp)
movq %r10, %rcx
orq %rsi, %rcx
movq -0xb8(%rbp), %r10
rolq $0x24, %r10
movq -0xd8(%rbp), %rbx
rolq $0xa, %rbx
movq -0x50(%rbp), %rsi
rolq $0xf, %rsi
rolq $0x38, %r11
rolq $0x1b, %rdx
xorq %rax, %rcx
movq %rcx, -0x50(%rbp)
movq %rbx, %rdi
orq %rsi, %rdi
notq %rsi
movq %r11, %rcx
orq %rsi, %rcx
movq %rsi, %rax
movq %r11, %rsi
andq %rdx, %rsi
xorq %rax, %rsi
xorq %rbx, %rcx
movq %rcx, -0x60(%rbp)
andq %r10, %rbx
xorq %rdx, %rbx
xorq %r10, %rdi
orq %r10, %rdx
xorq %r11, %rdx
movq -0x48(%rbp), %r13
rolq $0x29, %r13
movq -0xe8(%rbp), %r12
rolq $0x2, %r12
movq -0x98(%rbp), %r10
rolq $0x3e, %r10
movq -0x40(%rbp), %r11
rolq $0x37, %r11
movq -0x58(%rbp), %r9
rolq $0x27, %r9
movq %r11, %rax
notq %rax
andq %r10, %r11
xorq %r12, %r11
movq %r11, -0x40(%rbp)
movq %r12, %r11
andq %r13, %r12
orq %r10, %r11
xorq %r13, %r11
movq %r11, -0x48(%rbp)
orq %r9, %r13
xorq %r9, %r12
andq %rax, %r9
xorq %r10, %r9
xorq %rax, %r13
movq %r8, %rax
addq $0x8, %rax
movq %rax, -0xf8(%rbp)
cmpq $0x10, %rax
jb 0x1a802
movq -0x110(%rbp), %rax
movq -0xa0(%rbp), %r8
movq %r8, 0xc8(%rax)
movq -0x60(%rbp), %rcx
movq %rcx, 0x128(%rax)
movq %r15, 0x100(%rax)
movq %rdi, %r8
movq -0x40(%rbp), %rdi
movq %rdi, 0x160(%rax)
movq %rdx, 0x138(%rax)
movq -0x80(%rbp), %rdx
movq %rdx, 0xa8(%rax)
movq %r13, 0x148(%rax)
movq -0x70(%rbp), %rcx
movq %rcx, 0xb8(%rax)
movq -0xb0(%rbp), %rdx
movq %rdx, 0xa0(%rax)
movq %r8, 0x120(%rax)
movq %rsi, 0x130(%rax)
movq -0xa8(%rbp), %rdx
movq %rdx, 0xb0(%rax)
movq -0x90(%rbp), %rdx
movq %rdx, 0xc0(%rax)
movq -0x68(%rbp), %rcx
movq %rcx, 0xf0(%rax)
movq -0xc8(%rbp), %rdx
movq %rdx, 0x110(%rax)
movq -0x78(%rbp), %rdx
movq %rdx, 0xf8(%rax)
movq -0x50(%rbp), %rcx
movq %rcx, 0x108(%rax)
movq %r12, 0x150(%rax)
movq -0x48(%rbp), %rcx
movq %rcx, 0x158(%rax)
movq -0x88(%rbp), %rdx
movq %rdx, 0xd0(%rax)
movq -0x38(%rbp), %rdx
movq %rdx, 0xe0(%rax)
movq %r9, 0x140(%rax)
movq %r14, 0xd8(%rax)
movq %rax, %r14
movq %rbx, 0x118(%rax)
movq -0x30(%rbp), %rax
movq %rax, 0xe8(%r14)
xorl %ecx, %ecx
movq -0x120(%rbp), %r15
movq -0x118(%rbp), %r12
movq -0x108(%rbp), %rbx
movq -0x128(%rbp), %rax
addq %rax, %r12
subq %rax, %r15
jne 0x1a692
movq %rcx, 0x90(%r14)
addq $0x108, %rsp            # imm = 0x108
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq