// File: mh0fm4[P]SCDC/src/extra/xxhash/xxhash.c
// Function: XXH32_finalize
static U32
XXH32_finalize(U32 h32, const void* ptr, size_t len,
                XXH_endianess endian, XXH_alignment align)

{
    const BYTE* p = (const BYTE*)ptr;
#define PROCESS1             \
    h32 += (*p) * PRIME32_5; \
    p++;                     \
    h32 = XXH_rotl32(h32, 11) * PRIME32_1 ;

#define PROCESS4                         \
    h32 += XXH_get32bits(p) * PRIME32_3; \
    p+=4;                                \
    h32  = XXH_rotl32(h32, 17) * PRIME32_4 ;

    switch(len&15)  /* or switch(bEnd - p) */
    {
      case 12:      PROCESS4;
                    /* fallthrough */
      case 8:       PROCESS4;
                    /* fallthrough */
      case 4:       PROCESS4;
                    return XXH32_avalanche(h32);

      case 13:      PROCESS4;
                    /* fallthrough */
      case 9:       PROCESS4;
                    /* fallthrough */
      case 5:       PROCESS4;
                    PROCESS1;
                    return XXH32_avalanche(h32);

      case 14:      PROCESS4;
                    /* fallthrough */
      case 10:      PROCESS4;
                    /* fallthrough */
      case 6:       PROCESS4;
                    PROCESS1;
                    PROCESS1;
                    return XXH32_avalanche(h32);

      case 15:      PROCESS4;
                    /* fallthrough */
      case 11:      PROCESS4;
                    /* fallthrough */
      case 7:       PROCESS4;
                    /* fallthrough */
      case 3:       PROCESS1;
                    /* fallthrough */
      case 2:       PROCESS1;
                    /* fallthrough */
      case 1:       PROCESS1;
                    /* fallthrough */
      case 0:       return XXH32_avalanche(h32);
    }
    assert(0);
    return h32;   /* reaching this point is deemed impossible */
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x1b0, %rsp            # imm = 0x1B0
movl %edi, -0x128(%rbp)
movq %rsi, -0x130(%rbp)
movq %rdx, -0x138(%rbp)
movl %ecx, -0x13c(%rbp)
movl %r8d, -0x140(%rbp)
movq -0x130(%rbp), %rax
movq %rax, -0x148(%rbp)
movq -0x138(%rbp), %rax
andl $0xf, %eax
movq %rax, -0x150(%rbp)
subq $0xf, %rax
ja 0x5ab85
movq -0x150(%rbp), %rax
leaq 0x4dc8d(%rip), %rcx     # 0xa7b30
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0x10(%rbp)
movl %ecx, -0x14(%rbp)
movl %eax, -0x18(%rbp)
cmpl $0x1, -0x18(%rbp)
jne 0x59f07
cmpl $0x1, -0x14(%rbp)
jne 0x59ee6
movq -0x10(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x154(%rbp)
jmp 0x59efc
movq -0x10(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x154(%rbp)
movl -0x154(%rbp), %eax
movl %eax, -0x4(%rbp)
jmp 0x59f35
cmpl $0x1, -0x14(%rbp)
jne 0x59f1b
movq -0x10(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x158(%rbp)
jmp 0x59f2c
movq -0x10(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x158(%rbp)
movl -0x158(%rbp), %eax
movl %eax, -0x4(%rbp)
imull $0xc2b2ae3d, -0x4(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0x28(%rbp)
movl %ecx, -0x2c(%rbp)
movl %eax, -0x30(%rbp)
cmpl $0x1, -0x30(%rbp)
jne 0x59fd5
cmpl $0x1, -0x2c(%rbp)
jne 0x59fb4
movq -0x28(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x15c(%rbp)
jmp 0x59fca
movq -0x28(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x15c(%rbp)
movl -0x15c(%rbp), %eax
movl %eax, -0x1c(%rbp)
jmp 0x5a003
cmpl $0x1, -0x2c(%rbp)
jne 0x59fe9
movq -0x28(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x160(%rbp)
jmp 0x59ffa
movq -0x28(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x160(%rbp)
movl -0x160(%rbp), %eax
movl %eax, -0x1c(%rbp)
imull $0xc2b2ae3d, -0x1c(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0x40(%rbp)
movl %ecx, -0x44(%rbp)
movl %eax, -0x48(%rbp)
cmpl $0x1, -0x48(%rbp)
jne 0x5a0a3
cmpl $0x1, -0x44(%rbp)
jne 0x5a082
movq -0x40(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x164(%rbp)
jmp 0x5a098
movq -0x40(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x164(%rbp)
movl -0x164(%rbp), %eax
movl %eax, -0x34(%rbp)
jmp 0x5a0d1
cmpl $0x1, -0x44(%rbp)
jne 0x5a0b7
movq -0x40(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x168(%rbp)
jmp 0x5a0c8
movq -0x40(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x168(%rbp)
movl -0x168(%rbp), %eax
movl %eax, -0x34(%rbp)
imull $0xc2b2ae3d, -0x34(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movl -0x128(%rbp), %edi
callq 0x5abe0
movl %eax, -0x124(%rbp)
jmp 0x5aba4
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0x58(%rbp)
movl %ecx, -0x5c(%rbp)
movl %eax, -0x60(%rbp)
cmpl $0x1, -0x60(%rbp)
jne 0x5a187
cmpl $0x1, -0x5c(%rbp)
jne 0x5a166
movq -0x58(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x16c(%rbp)
jmp 0x5a17c
movq -0x58(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x16c(%rbp)
movl -0x16c(%rbp), %eax
movl %eax, -0x4c(%rbp)
jmp 0x5a1b5
cmpl $0x1, -0x5c(%rbp)
jne 0x5a19b
movq -0x58(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x170(%rbp)
jmp 0x5a1ac
movq -0x58(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x170(%rbp)
movl -0x170(%rbp), %eax
movl %eax, -0x4c(%rbp)
imull $0xc2b2ae3d, -0x4c(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0x70(%rbp)
movl %ecx, -0x74(%rbp)
movl %eax, -0x78(%rbp)
cmpl $0x1, -0x78(%rbp)
jne 0x5a255
cmpl $0x1, -0x74(%rbp)
jne 0x5a234
movq -0x70(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x174(%rbp)
jmp 0x5a24a
movq -0x70(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x174(%rbp)
movl -0x174(%rbp), %eax
movl %eax, -0x64(%rbp)
jmp 0x5a283
cmpl $0x1, -0x74(%rbp)
jne 0x5a269
movq -0x70(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x178(%rbp)
jmp 0x5a27a
movq -0x70(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x178(%rbp)
movl -0x178(%rbp), %eax
movl %eax, -0x64(%rbp)
imull $0xc2b2ae3d, -0x64(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0x88(%rbp)
movl %ecx, -0x8c(%rbp)
movl %eax, -0x90(%rbp)
cmpl $0x1, -0x90(%rbp)
jne 0x5a338
cmpl $0x1, -0x8c(%rbp)
jne 0x5a314
movq -0x88(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x17c(%rbp)
jmp 0x5a32d
movq -0x88(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x17c(%rbp)
movl -0x17c(%rbp), %eax
movl %eax, -0x7c(%rbp)
jmp 0x5a36f
cmpl $0x1, -0x8c(%rbp)
jne 0x5a352
movq -0x88(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x180(%rbp)
jmp 0x5a366
movq -0x88(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x180(%rbp)
movl -0x180(%rbp), %eax
movl %eax, -0x7c(%rbp)
imull $0xc2b2ae3d, -0x7c(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
movzbl (%rax), %eax
imull $0x165667b1, %eax, %eax # imm = 0x165667B1
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0xb, %eax
movl -0x128(%rbp), %ecx
shrl $0x15, %ecx
orl %ecx, %eax
imull $0x9e3779b1, %eax, %eax # imm = 0x9E3779B1
movl %eax, -0x128(%rbp)
movl -0x128(%rbp), %edi
callq 0x5abe0
movl %eax, -0x124(%rbp)
jmp 0x5aba4
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0xa0(%rbp)
movl %ecx, -0xa4(%rbp)
movl %eax, -0xa8(%rbp)
cmpl $0x1, -0xa8(%rbp)
jne 0x5a48b
cmpl $0x1, -0xa4(%rbp)
jne 0x5a464
movq -0xa0(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x184(%rbp)
jmp 0x5a47d
movq -0xa0(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x184(%rbp)
movl -0x184(%rbp), %eax
movl %eax, -0x94(%rbp)
jmp 0x5a4c5
cmpl $0x1, -0xa4(%rbp)
jne 0x5a4a5
movq -0xa0(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x188(%rbp)
jmp 0x5a4b9
movq -0xa0(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x188(%rbp)
movl -0x188(%rbp), %eax
movl %eax, -0x94(%rbp)
imull $0xc2b2ae3d, -0x94(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0xb8(%rbp)
movl %ecx, -0xbc(%rbp)
movl %eax, -0xc0(%rbp)
cmpl $0x1, -0xc0(%rbp)
jne 0x5a580
cmpl $0x1, -0xbc(%rbp)
jne 0x5a559
movq -0xb8(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x18c(%rbp)
jmp 0x5a572
movq -0xb8(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x18c(%rbp)
movl -0x18c(%rbp), %eax
movl %eax, -0xac(%rbp)
jmp 0x5a5ba
cmpl $0x1, -0xbc(%rbp)
jne 0x5a59a
movq -0xb8(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x190(%rbp)
jmp 0x5a5ae
movq -0xb8(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x190(%rbp)
movl -0x190(%rbp), %eax
movl %eax, -0xac(%rbp)
imull $0xc2b2ae3d, -0xac(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0xd0(%rbp)
movl %ecx, -0xd4(%rbp)
movl %eax, -0xd8(%rbp)
cmpl $0x1, -0xd8(%rbp)
jne 0x5a675
cmpl $0x1, -0xd4(%rbp)
jne 0x5a64e
movq -0xd0(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x194(%rbp)
jmp 0x5a667
movq -0xd0(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x194(%rbp)
movl -0x194(%rbp), %eax
movl %eax, -0xc4(%rbp)
jmp 0x5a6af
cmpl $0x1, -0xd4(%rbp)
jne 0x5a68f
movq -0xd0(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x198(%rbp)
jmp 0x5a6a3
movq -0xd0(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x198(%rbp)
movl -0x198(%rbp), %eax
movl %eax, -0xc4(%rbp)
imull $0xc2b2ae3d, -0xc4(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
movzbl (%rax), %eax
imull $0x165667b1, %eax, %eax # imm = 0x165667B1
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0xb, %eax
movl -0x128(%rbp), %ecx
shrl $0x15, %ecx
orl %ecx, %eax
imull $0x9e3779b1, %eax, %eax # imm = 0x9E3779B1
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
movzbl (%rax), %eax
imull $0x165667b1, %eax, %eax # imm = 0x165667B1
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0xb, %eax
movl -0x128(%rbp), %ecx
shrl $0x15, %ecx
orl %ecx, %eax
imull $0x9e3779b1, %eax, %eax # imm = 0x9E3779B1
movl %eax, -0x128(%rbp)
movl -0x128(%rbp), %edi
callq 0x5abe0
movl %eax, -0x124(%rbp)
jmp 0x5aba4
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0xe8(%rbp)
movl %ecx, -0xec(%rbp)
movl %eax, -0xf0(%rbp)
cmpl $0x1, -0xf0(%rbp)
jne 0x5a81c
cmpl $0x1, -0xec(%rbp)
jne 0x5a7f5
movq -0xe8(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x19c(%rbp)
jmp 0x5a80e
movq -0xe8(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x19c(%rbp)
movl -0x19c(%rbp), %eax
movl %eax, -0xdc(%rbp)
jmp 0x5a856
cmpl $0x1, -0xec(%rbp)
jne 0x5a836
movq -0xe8(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x1a0(%rbp)
jmp 0x5a84a
movq -0xe8(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x1a0(%rbp)
movl -0x1a0(%rbp), %eax
movl %eax, -0xdc(%rbp)
imull $0xc2b2ae3d, -0xdc(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0x100(%rbp)
movl %ecx, -0x104(%rbp)
movl %eax, -0x108(%rbp)
cmpl $0x1, -0x108(%rbp)
jne 0x5a911
cmpl $0x1, -0x104(%rbp)
jne 0x5a8ea
movq -0x100(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x1a4(%rbp)
jmp 0x5a903
movq -0x100(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x1a4(%rbp)
movl -0x1a4(%rbp), %eax
movl %eax, -0xf4(%rbp)
jmp 0x5a94b
cmpl $0x1, -0x104(%rbp)
jne 0x5a92b
movq -0x100(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x1a8(%rbp)
jmp 0x5a93f
movq -0x100(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x1a8(%rbp)
movl -0x1a8(%rbp), %eax
movl %eax, -0xf4(%rbp)
imull $0xc2b2ae3d, -0xf4(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rdx
movl -0x13c(%rbp), %ecx
movl -0x140(%rbp), %eax
movq %rdx, -0x118(%rbp)
movl %ecx, -0x11c(%rbp)
movl %eax, -0x120(%rbp)
cmpl $0x1, -0x120(%rbp)
jne 0x5aa06
cmpl $0x1, -0x11c(%rbp)
jne 0x5a9df
movq -0x118(%rbp), %rdi
callq 0x5abc0
movl %eax, -0x1ac(%rbp)
jmp 0x5a9f8
movq -0x118(%rbp), %rdi
callq 0x5abc0
movl %eax, %edi
callq 0x57750
movl %eax, -0x1ac(%rbp)
movl -0x1ac(%rbp), %eax
movl %eax, -0x10c(%rbp)
jmp 0x5aa40
cmpl $0x1, -0x11c(%rbp)
jne 0x5aa20
movq -0x118(%rbp), %rax
movl (%rax), %eax
movl %eax, -0x1b0(%rbp)
jmp 0x5aa34
movq -0x118(%rbp), %rax
movl (%rax), %edi
callq 0x57750
movl %eax, -0x1b0(%rbp)
movl -0x1b0(%rbp), %eax
movl %eax, -0x10c(%rbp)
imull $0xc2b2ae3d, -0x10c(%rbp), %eax # imm = 0xC2B2AE3D
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x4, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0x11, %eax
movl -0x128(%rbp), %ecx
shrl $0xf, %ecx
orl %ecx, %eax
imull $0x27d4eb2f, %eax, %eax # imm = 0x27D4EB2F
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
movzbl (%rax), %eax
imull $0x165667b1, %eax, %eax # imm = 0x165667B1
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0xb, %eax
movl -0x128(%rbp), %ecx
shrl $0x15, %ecx
orl %ecx, %eax
imull $0x9e3779b1, %eax, %eax # imm = 0x9E3779B1
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
movzbl (%rax), %eax
imull $0x165667b1, %eax, %eax # imm = 0x165667B1
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0xb, %eax
movl -0x128(%rbp), %ecx
shrl $0x15, %ecx
orl %ecx, %eax
imull $0x9e3779b1, %eax, %eax # imm = 0x9E3779B1
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
movzbl (%rax), %eax
imull $0x165667b1, %eax, %eax # imm = 0x165667B1
addl -0x128(%rbp), %eax
movl %eax, -0x128(%rbp)
movq -0x148(%rbp), %rax
addq $0x1, %rax
movq %rax, -0x148(%rbp)
movl -0x128(%rbp), %eax
shll $0xb, %eax
movl -0x128(%rbp), %ecx
shrl $0x15, %ecx
orl %ecx, %eax
imull $0x9e3779b1, %eax, %eax # imm = 0x9E3779B1
movl %eax, -0x128(%rbp)
movl -0x128(%rbp), %edi
callq 0x5abe0
movl %eax, -0x124(%rbp)
jmp 0x5aba4
leaq 0x4ce1e(%rip), %rdi     # 0xa79aa
leaq 0x4d061(%rip), %rsi     # 0xa7bf4
movl $0x15a, %edx            # imm = 0x15A
leaq 0x4d065(%rip), %rcx     # 0xa7c04
callq 0xc410
movl -0x124(%rbp), %eax
addq $0x1b0, %rsp            # imm = 0x1B0
popq %rbp
retq
nopw %cs:(%rax,%rax)