Function at 0x446540
Capabilities:
Hash data using murmur3

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
mov eax, dword [rdx + 0x14]
mov ebx, dword [rdx + 0x28]
mov edi, dword [rdx + 0x1c]
mov r15d, dword [rcx + 0x14]
mov r13d, dword [rcx + 0x28]
mov dword [rsp + 0x7c], eax
mov esi, dword [rdx + 0x34]
mov qword [rsp + 0x110], r8
mov r12d, dword [rcx + 0x34]
mov dword [rsp + 8], edi
mov r14d, dword [rdx + 0x38]
xor r15d, eax
mov dword [rsp + 0xc], ebx
mov r11d, dword [rcx + 0x38]
xor r13d, ebx
xor edi, dword [rcx + 0x1c]
lea eax, [r15 + r13]
mov dword [rsp + 0x1c], esi
xor r12d, esi
mov r9d, dword [rdx + 4]
add eax, r12d
mov r10d, dword [rcx + 0x20]
mov dword [rsp + 0x34], r14d
xor r11d, r14d
mov ebx, dword [rdx + 0x2c]
add eax, r11d
sub eax, edi
mov dword [rsp + 0x80], r9d
lea r8d, [rax*8]
mov ebp, eax
shr ebp, 1
mov dword [rsp + 0x88], ebx
xor ebx, dword [rcx + 0x2c]
xor r8d, ebp
mov ebp, eax
rol ebp, 4
ror eax, 0xd
xor ebp, r8d
mov r8d, dword [rdx + 0x20]
xor ebp, eax
mov eax, dword [rdx + 0x18]
add ebp, r9d
mov dword [rsp + 0x68], ebp
mov ebp, dword [rdx + 0x3c]
xor r10d, r8d
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x84], eax
xor eax, dword [rcx + 0x18]
mov r9d, r10d
mov dword [rsp + 0x8c], ebp
xor ebp, dword [rcx + 0x3c]
lea r10d, [r11 + rax]
mov dword [rsp + 0x14], eax
mov dword [rsp + 0x38], r10d
mov r14d, dword [rdx + 8]
mov r8d, ebp
mov ebp, r10d
mov dword [rsp + 0x24], edi
sub ebp, r9d
mov eax, ebp
mov ebp, ebx
add eax, ebx
mov dword [rsp + 0x90], r14d
sub eax, r8d
lea r10d, [rax*4]
mov esi, eax
shr esi, 1
xor r10d, esi
mov esi, eax
ror eax, 9
rol esi, 8
xor esi, r10d
mov r10d, dword [rdx + 0x24]
xor esi, eax
mov eax, dword [rdx + 0x30]
add esi, r14d
mov r14d, dword [rdx]
mov dword [rsp + 0x50], esi
mov dword [rsp + 0x98], r10d
xor r10d, dword [rcx + 0x24]
mov dword [rsp + 0x9c], eax
xor eax, dword [rcx + 0x30]
mov dword [rsp + 0x94], r14d
xor r14d, dword [rcx]
mov ebx, eax
mov eax, edi
mov edi, dword [rdx + 0xc]
add eax, r8d
mov dword [rsp + 4], ebx
mov edx, dword [rdx + 0x10]
add eax, r14d
mov dword [rsp + 0x10], r14d
add eax, r10d
sub eax, ebx
mov dword [rsp + 0xa0], edi
lea ebx, [rax + rax]
mov esi, eax
mov dword [rsp + 0xa4], edx
shr esi, 2
xor ebx, esi
mov esi, eax
ror eax, 7
rol esi, 0xc
xor esi, ebx
lea ebx, [r12 + r9]
xor esi, eax
mov eax, esi
add ebx, r14d
add eax, edi
mov edi, dword [rsp + 0x80]
xor edi, dword [rcx + 4]
mov dword [rsp + 0x44], eax
sub ebx, edi
mov eax, edi
sub ebx, r13d
mov esi, ebx
shr esi, 2
mov edi, esi
lea esi, [rbx*4]
xor esi, edi
mov edi, ebx
ror ebx, 3
rol edi, 0xf
xor edi, esi
lea esi, [r10 + rax]
xor edi, ebx
add edi, edx
mov edx, dword [rsp + 0x90]
xor edx, dword [rcx + 8]
mov dword [rsp + 0x48], edi
add esi, edx
mov r14d, edx
sub esi, ebp
sub esi, r11d
mov edx, esi
shr edx, 1
xor esi, edx
mov edx, dword [rsp + 0xa0]
xor edx, dword [rcx + 0xc]
add esi, dword [rsp + 0x7c]
mov edi, edx
lea edx, [r13 + r8]
mov dword [rsp + 0x4c], esi
add edx, edi
sub edx, r14d
sub edx, dword [rsp + 4]
lea ebx, [rdx*8]
mov esi, edx
shr esi, 1
xor ebx, esi
mov esi, edx
ror edx, 0xd
rol esi, 4
xor esi, ebx
xor esi, edx
add esi, dword [rsp + 0x84]
mov dword [rsp + 0x3c], esi
mov esi, dword [rsp + 0xa4]
xor esi, dword [rcx + 0x10]
mov dword [rsp + 0x28], ebp
lea edx, [r12 + rsi]
sub edx, dword [rsp + 0x10]
mov ebx, esi
sub edx, edi
sub edx, ebp
lea esi, [rdx*4]
mov ebp, edx
shr ebp, 1
xor esi, ebp
mov ebp, edx
ror edx, 9
rol ebp, 8
xor ebp, esi
mov esi, eax
xor ebp, edx
add ebp, dword [rsp + 8]
lea edx, [r15 + rbx]
sub esi, edx
mov edx, esi
sub edx, dword [rsp + 4]
mov dword [rsp + 0x2c], ebp
mov ebp, dword [rsp + 0x24]
sub edx, r11d
lea esi, [rdx + rdx]
mov r11d, edx
shr r11d, 2
xor esi, r11d
mov r11d, edx
ror edx, 7
rol r11d, 0xc
xor r11d, esi
xor r11d, edx
add r11d, dword [rsp + 0x18]
lea edx, [r12 + r14]
sub edx, r15d
sub edx, dword [rsp + 0x14]
mov dword [rsp + 0x30], r11d
sub edx, r8d
lea esi, [rdx*4]
mov r11d, edx
shr r11d, 2
add r8d, r9d
xor esi, r11d
mov r11d, edx
ror edx, 3
rol r11d, 0xf
sub r8d, eax
xor r11d, esi
mov esi, dword [rsp + 0x98]
sub r8d, ebx
xor r11d, edx
sub r8d, ebp
add esi, r11d
mov r11d, dword [rsp + 0x38]
mov dword [rsp + 0x20], esi
mov esi, dword [rsp + 0x10]
sub r11d, edi
add r11d, esi
sub r11d, ebp
mov edx, r11d
shr edx, 1
xor r11d, edx
add r11d, dword [rsp + 0xc]
lea edx, [r8*8]
mov dword [rsp + 0x24], r11d
mov r11d, r8d
shr r11d, 1
xor edx, r11d
mov r11d, r8d
ror r8d, 0xd
rol r11d, 4
xor r11d, edx
lea edx, [r9 + r10]
xor r11d, r8d
add r11d, dword [rsp + 0x88]
sub edx, esi
mov esi, dword [rsp + 0x8c]
sub edx, r14d
sub edx, r15d
mov r8d, edx
mov dword [rsp + 0x10], r11d
lea r11d, [rdx*4]
shr r8d, 1
xor r11d, r8d
mov r8d, edx
ror edx, 9
rol r8d, 8
xor r8d, r11d
mov r11d, dword [rsp + 0x14]
xor r8d, edx
add eax, r13d
add r8d, dword [rsp + 0x9c]
add r13d, ebp
mov ebp, dword [rsp + 0x28]
add eax, edi
add r9d, edi
sub r9d, r15d
sub eax, r11d
sub eax, r10d
mov dword [rsp + 0x40], r8d
add r13d, ebp
mov r8d, eax
sub r9d, ebp
lea edx, [rax + rax]
shr r8d, 2
add r14d, r13d
add r14d, ebx
xor edx, r8d
mov r8d, eax
rol r8d, 0xc
mov r13d, r14d
ror eax, 7
xor r8d, edx
shr r13d, 2
lea edx, [r14*4]
xor r8d, eax
add r8d, dword [rsp + 0x1c]
xor edx, r13d
mov r13d, r14d
rol r13d, 0xf
ror r14d, 3
mov eax, r13d
mov r13d, dword [rsp + 4]
xor eax, edx
mov edx, r8d
xor eax, r14d
add eax, dword [rsp + 0x34]
sub r9d, r13d
mov r15d, r9d
shr r15d, 1
mov dword [rsp + 0x54], eax
xor r9d, r15d
lea r15d, [r12 + r13]
add esi, r9d
mov r13d, dword [rsp + 0x2c]
sub r15d, ebx
mov ebx, dword [rsp + 0x4c]
sub r15d, r11d
shr edx, 1
sub r15d, r10d
lea eax, [r15*8]
mov r12d, r15d
shr r13d, 2
shr r12d, 1
xor eax, r12d
mov r12d, r15d
ror r15d, 0xd
rol r12d, 4
mov r10d, r12d
mov r12d, dword [rsp + 0x94]
xor r10d, eax
xor r10d, r15d
mov r15d, dword [rsp + 0x44]
mov r14d, dword [rsp + 0x20]
mov dword [rsp + 0x14], r8d
add r12d, r10d
mov r9d, dword [rsp + 0x24]
mov dword [rsp + 4], edx
mov r10d, esi
mov eax, r12d
mov dword [rsp + 0x5c], r12d
mov r8d, dword [rcx]
shr r10d, 2
ror eax, 0xd
shr r15d, 2
mov edi, dword [rsp + 0x40]
mov r12d, eax
mov eax, dword [rcx + 0xc]
mov ebp, r15d
mov r15d, ebx
lea edx, [r9 + r9]
shr r15d, 1
mov dword [rsp + 0xac], r12d
rol r8d, 1
mov r11d, r15d
mov r15d, dword [rsp + 0x10]
shr r14d, 1
mov dword [rsp + 0x64], r8d
mov r8d, dword [rcx + 0x28]
ror edi, 0xd
rol eax, 4
mov dword [rsp + 0x38], eax
mov eax, r9d
shr eax, 2
shr r15d, 2
xor eax, edx
mov edx, r9d
rol r8d, 0xb
rol edx, 0xc
mov dword [rsp + 0x6c], r8d
xor edx, eax
mov eax, r9d
ror eax, 7
xor edx, eax
lea eax, [rbx*4]
mov r8d, eax
mov eax, ebx
xor r8d, r11d
rol eax, 8
xor eax, r8d
mov r8d, ebx
ror r8d, 9
xor eax, r8d
mov r8d, dword [rsp + 0x64]
lea r9d, [rdx + rax]
mov eax, dword [rsp + 0x38]
lea edx, [r8 + rax + 0x55555550]
sub edx, dword [rsp + 0x6c]
xor edx, dword [rsp + 8]
lea eax, [rsi*4]
lea r8d, [r9 + rdx]
mov r9d, esi
mov esi, eax
mov dword [rsp + 0x58], r9d
mov eax, r9d
mov edx, r9d
mov r9d, dword [rsp + 0x68]
rol eax, 0xf
xor esi, r10d
ror edx, 3
xor eax, esi
xor edx, eax
lea esi, [r9*4]
add edx, r8d
mov r8d, r9d
shr r8d, 1
mov eax, r8d
mov r8d, r9d
rol r8d, 8
xor eax, esi
mov esi, r8d
mov r8d, r9d
ror r8d, 9
xor esi, eax
mov eax, r8d
xor eax, esi
add eax, edx
mov edx, dword [rsp + 0x50]
lea ebx, [rdx + rdx]
mov esi, edx
mov r9d, edx
rol r9d, 0xc
shr esi, 2
xor esi, ebx
ror edx, 7
mov ebx, r9d
xor ebx, esi
mov esi, edx
xor esi, ebx
add esi, eax
mov eax, dword [rsp + 0x44]
lea r9d, [rax*4]
mov edx, eax
mov ebx, r9d
mov r9d, eax
mov eax, dword [rsp + 0x48]
ror edx, 3
xor ebx, ebp
rol r9d, 0xf
xor r9d, ebx
mov ebx, edx
xor ebx, r9d
lea r8d, [rax*8]
mov edx, eax
add ebx, esi
shr edx, 1
mov r9d, edx
mov edx, eax
rol edx, 4
xor r9d, r8d
mov r8d, edx
mov edx, eax
xor r8d, r9d
ror edx, 0xd
mov r9d, edx
mov edx, dword [rsp + 0x3c]
xor r9d, r8d
add r9d, ebx
mov eax, edx
shr eax, 2
mov r8d, eax
mov eax, edx
lea edx, [rdx + rdx]
xor r8d, edx
mov edx, eax
rol edx, 0xc
xor edx, r8d
mov r8d, eax
ror r8d, 7
xor r8d, edx
add r8d, r9d
mov r9d, dword [rsp + 0x2c]
lea eax, [r9*4]
mov ebx, r9d
mov edx, r9d
mov r9d, dword [rsp + 0x10]
rol ebx, 0xf
mov esi, eax
ror edx, 3
xor esi, r13d
mov eax, ebx
xor eax, esi
mov esi, dword [rsp + 0x20]
xor edx, eax
add edx, r8d
lea eax, [rsi*4]
mov r8d, esi
mov ebx, eax
mov eax, esi
ror r8d, 9
xor ebx, r14d
rol eax, 8
xor eax, ebx
mov ebx, dword [rsp + 0x54]
xor eax, r8d
mov r8d, r9d
add eax, edx
mov edx, r9d
ror r8d, 3
shl edx, 2
mov esi, edx
mov edx, r9d
mov r9d, dword [rsp + 0x40]
xor esi, r15d
rol edx, 0xf
xor edx, esi
mov esi, dword [rsp + 0x5c]
xor edx, r8d
add eax, edx
mov r8d, r9d
mov edx, r9d
shr edx, 1
shl r8d, 3
xor r8d, edx
mov edx, r9d
mov r9d, dword [rsp + 0x14]
rol edx, 4
xor r8d, edx
xor r8d, edi
lea edx, [r9*4]
add eax, r8d
mov r8d, dword [rsp + 4]
xor r8d, edx
mov edx, r9d
rol edx, 8
xor edx, r8d
mov r8d, r9d
ror r8d, 9
xor edx, r8d
mov r8d, ebx
add eax, edx
shr r8d, 2
lea edx, [rbx + rbx]
xor r8d, edx
mov edx, ebx
rol edx, 0xc
xor edx, r8d
mov r8d, ebx
ror r8d, 7
xor edx, r8d
mov r8d, esi
add edx, eax
shr r8d, 1
lea eax, [rsi*8]
xor eax, r8d
mov r8d, esi
rol r8d, 4
xor eax, r8d
xor eax, r12d
mov r12d, dword [rsp + 0x30]
add edx, eax
mov esi, dword [rcx + 4]
lea r8d, [r12*8]
mov eax, r12d
shr eax, 1
xor eax, r8d
mov r8d, r12d
rol r8d, 4
xor r8d, eax
mov eax, r12d
mov r12d, r9d
ror eax, 0xd
mov r9d, ebx
ror r12d, 0xd
xor r8d, eax
ror r9d, 9
add edx, r8d
mov r8d, edx
mov ebx, edx
mov dword [rsp + 0x60], edx
shr r8d, 1
rol esi, 2
mov dword [rsp + 0x70], esi
mov esi, dword [rcx + 0x10]
ror ebx, 0xd
mov dword [rsp + 0xa8], ebx
mov ebx, dword [rsp + 0x24]
rol esi, 5
mov dword [rsp + 0x74], esi
mov esi, dword [rcx + 0x2c]
lea edx, [rbx*4]
mov eax, ebx
shr eax, 1
xor eax, edx
rol esi, 0xc
mov dword [rsp + 0x78], esi
mov esi, ebx
rol esi, 8
mov edx, esi
xor edx, eax
mov eax, ebx
mov ebx, dword [rsp + 0x4c]
ror eax, 9
xor edx, eax
lea eax, [rbx*8]
mov esi, ebx
rol esi, 4
xor r11d, eax
mov eax, esi
xor eax, r11d
mov r11d, ebx
mov ebx, dword [rsp + 0x74]
ror r11d, 0xd
xor eax, r11d
mov r11d, dword [rsp + 0x70]
add eax, edx
lea edx, [r11 + rbx + 0x5aaaaaa5]
sub edx, dword [rsp + 0x78]
xor edx, dword [rsp + 0x18]
lea r11d, [rax + rdx]
mov eax, dword [rsp + 0x58]
lea edx, [rax + rax]
xor edx, r10d
mov r10d, eax
rol r10d, 0xc
xor r10d, edx
mov edx, eax
ror edx, 7
xor edx, r10d
mov r10d, dword [rsp + 0x50]
add edx, r11d
lea esi, [r10*4]
mov r11d, r10d
shr r11d, 1
mov eax, r11d
mov r11d, r10d
rol r11d, 8
xor eax, esi
mov esi, r11d
mov r11d, r10d
mov r10d, dword [rsp + 0x44]
ror r11d, 9
xor esi, eax
mov eax, r11d
xor eax, esi
lea ebx, [r10 + r10]
add eax, edx
xor ebx, ebp
mov ebp, dword [rsp + 0x2c]
mov esi, ebx
mov ebx, r10d
rol ebx, 0xc
xor ebx, esi
mov esi, r10d
mov r10d, dword [rsp + 0x48]
lea edx, [rbp + rbp]
ror esi, 7
xor esi, ebx
add esi, eax
mov eax, dword [rsp + 0x3c]
mov r11d, r10d
shr r11d, 2
mov ebx, r11d
lea r11d, [r10*4]
xor ebx, r11d
mov r11d, r10d
ror r10d, 3
rol r11d, 0xf
xor r11d, ebx
mov ebx, r10d
mov r10d, eax
shr r10d, 1
xor ebx, r11d
mov r11d, r10d
add ebx, esi
mov esi, dword [rsp + 0x5c]
lea r10d, [rax*4]
xor r11d, r10d
mov r10d, eax
rol r10d, 8
xor r10d, r11d
mov r11d, eax
ror r11d, 9
xor r11d, r10d
mov r10d, ebp
add r11d, ebx
mov ebx, edx
ror r10d, 7
xor ebx, r13d
mov r13d, ebp
rol r13d, 0xc
mov edx, r13d
mov r13d, dword [rsp + 0x20]
xor edx, ebx
xor r10d, edx
add r10d, r11d
mov r11d, dword [rsp + 0x10]
lea eax, [r13*8]
mov ebp, eax
mov eax, r13d
xor ebp, r14d
mov r14d, r13d
rol eax, 4
ror r14d, 0xd
xor eax, ebp
mov ebp, dword [rsp + 0x30]
mov edx, r14d
xor edx, eax
lea eax, [r11 + r11]
add edx, r10d
mov r10d, r11d
mov r13d, eax
mov eax, r11d
xor r13d, r15d
rol eax, 0xc
mov r15d, dword [rsp + 0x54]
xor eax, r13d
mov r13d, dword [rsp + 0x40]
ror r10d, 7
xor eax, r10d
add eax, edx
lea r11d, [r15*4]
mov ebx, r15d
lea r10d, [r13*4]
mov r14d, r13d
shr ebx, 1
shr r14d, 2
xor r11d, ebx
mov ebx, r15d
mov edx, r14d
mov r14d, r13d
rol ebx, 8
rol r14d, 0xf
xor edx, r10d
mov r10d, r14d
mov r14d, r13d
xor r10d, edx
ror r14d, 3
xor r10d, r14d
mov r14d, dword [rsp + 0x14]
add r10d, eax
lea edx, [r14*8]
xor edx, dword [rsp + 4]
mov eax, r14d
mov r14d, ebp
rol eax, 4
shr r14d, 2
xor eax, edx
mov edx, ebx
xor eax, r12d
xor edx, r11d
mov r11d, esi
xor edx, r9d
add eax, r10d
shr r11d, 2
add eax, edx
lea edx, [rsi*4]
xor r11d, edx
mov edx, esi
rol edx, 0xf
xor edx, r11d
mov r11d, esi
ror r11d, 3
xor edx, r11d
mov r11d, r14d
mov r14d, ebp
add edx, eax
lea eax, [rbp*4]
xor r11d, eax
rol r14d, 0xf
mov eax, r14d
ror ebp, 3
xor eax, r11d
xor eax, ebp
mov ebp, dword [rsp + 0x60]
add eax, edx
lea r11d, [rbp*8]
mov edx, ebp
xor r11d, r8d
rol edx, 4
xor r11d, edx
xor r11d, dword [rsp + 0xa8]
lea r14d, [rax + r11]
mov dword [rsp + 0x28], r14d
mov ebx, dword [rcx + 8]
mov r14d, dword [rcx + 0x30]
mov r11d, dword [rsp + 0x58]
mov edx, dword [rsp + 0x4c]
rol ebx, 3
mov r10d, dword [rsp + 0x24]
mov eax, ebx
mov ebx, dword [rcx + 0x14]
rol r14d, 0xd
mov dword [rsp + 0x5c], eax
add edx, r11d
rol r10d, 0x10
rol ebx, 6
lea eax, [rax + rbx + 0x5ffffffa]
sub eax, r14d
xor eax, dword [rsp + 0x98]
add eax, edx
add eax, r10d
add eax, dword [rsp + 0x44]
mov r10d, ebp
add eax, dword [rsp + 0x2c]
add eax, dword [rsp + 0x20]
add eax, dword [rsp + 0x10]
add eax, dword [rsp + 0x14]
add eax, edi
mov edi, dword [rsp + 0x48]
add r9d, eax
mov eax, dword [rsp + 0x3c]
rol edi, 3
add r9d, edi
rol eax, 7
add eax, r9d
mov r9d, esi
ror r9d, 5
add r9d, eax
mov eax, dword [rsp + 0x30]
rol eax, 0xd
xor r8d, ebp
mov ebp, dword [rsp + 0x28]
add eax, r9d
mov r9d, dword [rcx + 0x34]
add eax, r8d
mov edi, ebp
shr edi, 2
rol r9d, 0xe
mov r8d, edi
mov edi, dword [rcx + 0x18]
xor r8d, ebp
add eax, r8d
mov r8d, r9d
mov r9d, dword [rsp + 0x38]
mov dword [rsp + 8], eax
rol edi, 7
mov dword [rsp + 0x54], r8d
lea eax, [r9 + rdi + 0x6555554f]
mov r9d, dword [rsp + 0x4c]
sub eax, r8d
mov r8d, dword [rsp + 0x24]
xor eax, dword [rsp + 0xc]
rol r9d, 3
add r8d, eax
mov eax, r9d
mov r9d, r11d
add eax, r8d
mov r8d, r11d
mov r11d, dword [rsp + 0x10]
ror r8d, 9
add eax, r8d
add eax, dword [rsp + 0x48]
add eax, dword [rsp + 0x3c]
mov r8d, dword [rsp + 0x20]
add eax, r13d
add eax, r15d
rol r8d, 0xd
add eax, esi
add eax, dword [rsp + 0x30]
add eax, r12d
mov r12d, dword [rsp + 0x2c]
rol r12d, 7
add eax, r12d
mov r12d, ebp
add r8d, eax
mov eax, r11d
rol eax, 0x10
add eax, r8d
mov r8d, r10d
ror r8d, 5
add r8d, eax
mov eax, ebp
shr eax, 1
xor eax, ebp
mov ebp, dword [rsp + 8]
add eax, r8d
mov r8d, ebp
shr r8d, 2
xor r8d, ebp
add eax, r8d
mov dword [rsp + 4], eax
mov eax, dword [rcx + 0x38]
mov ebp, dword [rcx + 0x1c]
rol eax, 0xf
mov r8d, eax
mov eax, dword [rsp + 0x74]
rol ebp, 8
mov dword [rsp + 0x58], r8d
lea eax, [rax + rbp + 0x6aaaaaa4]
sub eax, r8d
mov r8d, dword [rsp + 0x24]
xor eax, dword [rsp + 0x88]
add edx, eax
mov eax, r8d
rol eax, 0xd
add eax, edx
add eax, dword [rsp + 0x2c]
add eax, dword [rsp + 0x20]
mov edx, dword [rsp + 0x3c]
add eax, r11d
add eax, dword [rsp + 0x14]
mov r11d, r13d
rol edx, 3
rol r11d, 0x10
add eax, edx
mov edx, r11d
mov r11d, dword [rsp + 0x30]
add edx, eax
mov eax, r15d
ror eax, 0xd
add edx, eax
mov eax, esi
ror eax, 9
add eax, edx
mov edx, r11d
rol edx, 7
add eax, edx
mov edx, r12d
mov r12d, dword [rsp + 8]
add eax, r10d
ror edx, 5
add edx, eax
mov eax, r12d
shr eax, 1
xor eax, r12d
mov r12d, dword [rsp + 4]
add eax, edx
mov edx, r12d
shr edx, 2
xor edx, r12d
mov r12d, dword [rcx + 0x20]
add eax, edx
mov dword [rsp + 0xc], eax
mov eax, dword [rcx + 0x3c]
rol r12d, 9
rol eax, 0x10
mov edx, eax
lea eax, [rbx + r12 + 0x6ffffff9]
mov dword [rsp + 0x88], edx
sub eax, edx
xor eax, dword [rsp + 0x9c]
mov edx, r9d
ror edx, 0xd
add eax, r8d
mov r8d, r9d
mov r9d, r13d
add eax, edx
add eax, dword [rsp + 0x3c]
add eax, r13d
mov r13d, dword [rsp + 0x2c]
add eax, r15d
add eax, esi
add eax, r11d
mov r11d, dword [rsp + 0x14]
rol r13d, 3
add eax, r13d
mov r13d, dword [rsp + 0x20]
rol r13d, 7
mov edx, r13d
mov r13d, dword [rsp + 8]
add edx, eax
mov eax, dword [rsp + 0x10]
ror r13d, 5
rol eax, 0xd
add edx, eax
mov eax, r11d
rol eax, 0x10
add eax, edx
mov edx, r10d
ror edx, 9
add eax, edx
mov edx, r13d
add eax, dword [rsp + 0x28]
mov r13d, dword [rsp + 4]
add edx, eax
mov eax, r13d
shr eax, 1
xor eax, r13d
mov r13d, dword [rsp + 0xc]
add eax, edx
mov edx, r13d
shr edx, 2
xor edx, r13d
add eax, edx
mov edx, dword [rsp + 0x24]
mov dword [rsp + 0x18], eax
mov eax, dword [rcx + 0x24]
rol edx, 7
rol eax, 0xa
mov r13d, eax
lea eax, [rdi + rax + 0x7555554e]
sub eax, dword [rsp + 0x64]
xor eax, dword [rsp + 0x1c]
add eax, r8d
add eax, edx
add eax, dword [rsp + 0x2c]
mov edx, r9d
add eax, dword [rsp + 0x20]
rol edx, 0xd
add eax, dword [rsp + 0x10]
add eax, r11d
add eax, dword [rsp + 0xac]
mov r11d, r9d
mov r9d, r15d
add edx, eax
mov eax, r15d
mov r15d, dword [rsp + 0x30]
rol eax, 0x10
add eax, edx
rol r15d, 3
add eax, r15d
mov r15d, dword [rsp + 0x28]
add eax, r10d
mov r10d, dword [rsp + 0xc]
ror r15d, 9
add eax, r15d
mov r15d, dword [rsp + 4]
add eax, dword [rsp + 8]
ror r15d, 5
mov edx, r15d
mov r15d, dword [rsp + 0x18]
add edx, eax
mov eax, r10d
shr eax, 1
xor eax, r10d
mov r10d, r15d
add eax, edx
mov edx, r8d
shr r10d, 2
xor r10d, r15d
add eax, r10d
mov r10d, r11d
mov dword [rsp + 0x1c], eax
mov eax, dword [rsp + 0x6c]
lea eax, [rax + rbp + 0x7aaaaaa3]
sub eax, dword [rsp + 0x70]
xor eax, dword [rsp + 0x34]
rol edx, 0x10
add eax, dword [rsp + 0x24]
add eax, edx
mov edx, dword [rsp + 0x20]
add eax, r11d
mov r11d, dword [rsp + 0xc]
add eax, r9d
add eax, esi
add eax, dword [rsp + 0x30]
rol edx, 3
ror r11d, 5
add edx, eax
mov eax, dword [rsp + 0x10]
rol eax, 7
add eax, edx
mov edx, dword [rsp + 0x14]
rol edx, 0xd
add eax, edx
mov edx, dword [rsp + 8]
add eax, dword [rsp + 0xa8]
add eax, dword [rsp + 0x28]
ror edx, 9
add eax, edx
add eax, dword [rsp + 4]
mov edx, r11d
add edx, eax
mov eax, dword [rsp + 0x18]
mov r15d, eax
shr r15d, 1
xor r15d, eax
lea eax, [rdx + r15]
mov r15d, dword [rsp + 0x1c]
mov edx, dword [rsp + 0x24]
mov r11d, r15d
shr r11d, 2
rol edx, 3
xor r11d, r15d
lea r15d, [rax + r11]
mov r11d, dword [rsp + 0x78]
lea eax, [r11 + r12 + 0x7ffffff8]
sub eax, dword [rsp + 0x5c]
mov r11d, r9d
xor eax, dword [rsp + 0x8c]
add eax, r8d
add eax, edx
add eax, dword [rsp + 0x20]
mov edx, r10d
add eax, dword [rsp + 0x10]
add eax, dword [rsp + 0x14]
rol edx, 7
mov r10d, dword [rsp + 0x60]
add edx, eax
mov eax, r9d
mov r9d, esi
rol eax, 0xd
rol esi, 0x10
add eax, edx
add eax, esi
mov esi, dword [rsp + 0x28]
add eax, r10d
ror esi, 0xd
add eax, esi
mov esi, dword [rsp + 4]
add eax, dword [rsp + 8]
ror esi, 9
add eax, esi
mov esi, dword [rsp + 0x18]
add eax, dword [rsp + 0xc]
ror esi, 5
mov edx, esi
mov esi, dword [rsp + 0x1c]
add edx, eax
mov eax, esi
shr eax, 1
xor eax, esi
mov esi, r15d
shr esi, 2
add eax, edx
mov edx, r8d
xor esi, r15d
rol edx, 0xd
add eax, esi
mov esi, r9d
mov dword [rsp + 0x34], eax
lea eax, [r14 + r13 - 0x7aaaaab3]
sub eax, dword [rsp + 0x38]
xor eax, dword [rsp + 0x94]
add eax, dword [rsp + 0x24]
add eax, edx
add eax, dword [rsp + 0x40]
add eax, r11d
add eax, r9d
mov r9d, dword [rsp + 0x10]
rol r9d, 3
mov edx, r9d
mov r9d, dword [rsp + 0xc]
add edx, eax
mov eax, dword [rsp + 0x14]
rol eax, 7
ror r9d, 9
add eax, edx
mov edx, r10d
rol edx, 0x10
add eax, edx
mov edx, dword [rsp + 8]
add eax, dword [rsp + 0x28]
ror edx, 0xd
add eax, edx
add eax, dword [rsp + 4]
mov edx, dword [rsp + 0x1c]
add eax, r9d
add eax, dword [rsp + 0x18]
mov r9d, dword [rsp + 0x34]
ror edx, 5
add edx, eax
mov eax, r15d
shr eax, 1
xor eax, r15d
add eax, edx
mov edx, r9d
shr edx, 2
xor edx, r9d
mov r9d, dword [rsp + 0x54]
add eax, edx
mov edx, dword [rsp + 0x40]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x6c]
rol edx, 3
lea eax, [rax + r9 - 0x7555555e]
sub eax, dword [rsp + 0x74]
mov r9d, r8d
xor eax, dword [rsp + 0x80]
add eax, r8d
add eax, dword [rsp + 0x10]
add eax, dword [rsp + 0x14]
add edx, eax
mov eax, r11d
rol eax, 7
add eax, edx
mov edx, esi
rol edx, 0xd
add eax, edx
mov edx, dword [rsp + 0x28]
add eax, r10d
rol edx, 0x10
add eax, edx
add eax, dword [rsp + 8]
mov r8d, dword [rsp + 4]
mov edx, dword [rsp + 0x18]
ror r8d, 0xd
add eax, r8d
add eax, dword [rsp + 0xc]
ror edx, 9
mov r8d, r15d
ror r8d, 5
add eax, edx
add eax, dword [rsp + 0x1c]
mov edx, r8d
add edx, eax
mov eax, dword [rsp + 0x34]
mov r8d, eax
shr r8d, 1
xor r8d, eax
lea eax, [rdx + r8]
mov edx, dword [rsp + 0x38]
mov r8d, edx
shr r8d, 2
xor r8d, edx
mov edx, dword [rsp + 0x58]
add r8d, eax
mov eax, dword [rsp + 0x78]
lea eax, [rax + rdx - 0x70000009]
mov edx, r9d
sub eax, ebx
xor eax, dword [rsp + 0x90]
rol edx, 7
mov ebx, r9d
mov r9d, dword [rsp + 0xc]
add eax, edx
add eax, dword [rsp + 0x40]
ror r9d, 0xd
add eax, r11d
lea edx, [rax + rsi]
mov eax, dword [rsp + 0x14]
rol eax, 3
add eax, edx
mov edx, r10d
rol edx, 0xd
add eax, edx
mov edx, dword [rsp + 8]
add eax, dword [rsp + 0x28]
rol edx, 0x10
add eax, edx
add eax, dword [rsp + 4]
mov edx, dword [rsp + 0x1c]
add eax, r9d
add eax, dword [rsp + 0x18]
ror edx, 9
add eax, edx
mov edx, dword [rsp + 0x34]
add eax, r15d
ror edx, 5
add edx, eax
mov eax, dword [rsp + 0x38]
mov r9d, eax
shr r9d, 1
xor r9d, eax
lea eax, [rdx + r9]
mov r9d, r8d
shr r9d, 2
xor r9d, r8d
add r9d, eax
mov eax, dword [rsp + 0x88]
lea eax, [r14 + rax - 0x6aaaaab4]
mov r14d, dword [rsp + 0x28]
sub eax, edi
xor eax, dword [rsp + 0xa0]
mov edi, dword [rsp + 0x14]
add eax, ebx
lea edx, [rax + rdi]
mov eax, r11d
mov edi, r10d
rol eax, 3
add eax, edx
mov edx, esi
rol edx, 7
add eax, edx
add eax, r10d
mov r10d, r14d
rol r10d, 0xd
add eax, r10d
mov r10d, dword [rsp + 4]
add eax, dword [rsp + 8]
rol r10d, 0x10
add eax, r10d
mov r10d, dword [rsp + 0x18]
add eax, dword [rsp + 0xc]
ror r10d, 0xd
add eax, r10d
add eax, dword [rsp + 0x1c]
mov r10d, r15d
ror r10d, 9
add eax, r10d
mov r10d, dword [rsp + 0x38]
add eax, dword [rsp + 0x34]
ror r10d, 5
add r10d, eax
mov eax, r8d
shr eax, 1
mov edx, eax
xor edx, r8d
lea eax, [r10 + rdx]
mov edx, r9d
mov r10d, dword [rsp + 0x54]
shr edx, 2
xor edx, r9d
add edx, eax
mov eax, dword [rsp + 0x64]
lea r10d, [rax + r10 - 0x6555555f]
mov eax, ebx
sub r10d, ebp
xor r10d, dword [rsp + 0xa4]
rol eax, 3
mov ebp, r14d
mov dword [rsp + 0x54], r11d
add r10d, eax
mov eax, edi
add r10d, r11d
rol eax, 7
mov r11d, r8d
add r10d, esi
ror r11d, 5
add r10d, eax
add r10d, r14d
mov r14d, dword [rsp + 8]
mov eax, r14d
rol eax, 0xd
add r10d, eax
mov eax, dword [rsp + 0xc]
add r10d, dword [rsp + 4]
rol eax, 0x10
add r10d, eax
mov eax, dword [rsp + 0x1c]
add r10d, dword [rsp + 0x18]
ror eax, 0xd
add r10d, eax
mov eax, dword [rsp + 0x34]
add r10d, r15d
ror eax, 9
add r10d, eax
add r10d, dword [rsp + 0x38]
add r11d, r10d
mov r10d, r9d
shr r10d, 1
mov eax, r10d
xor eax, r9d
lea r10d, [r11 + rax]
mov r11d, edx
shr r11d, 2
mov eax, r11d
mov r11d, dword [rsp + 0x58]
mov dword [rsp + 0x58], ebx
xor eax, edx
add eax, r10d
mov r10d, dword [rsp + 0x70]
lea r10d, [r10 + r11 - 0x6000000a]
mov r11d, esi
sub r10d, r12d
xor r10d, dword [rsp + 0x7c]
rol r11d, 3
mov r12d, ebp
rol r12d, 7
add r10d, ebx
mov ebx, dword [rsp + 0x18]
add r10d, r11d
add r10d, edi
add r10d, r12d
mov r12d, r14d
add r10d, r14d
mov r14d, dword [rsp + 4]
rol ebx, 0x10
rol r14d, 0xd
add r10d, r14d
add r10d, dword [rsp + 0xc]
mov r14d, r15d
ror r14d, 0xd
add r10d, ebx
add r10d, dword [rsp + 0x1c]
mov ebx, eax
shr ebx, 2
xor ebx, eax
add r10d, r14d
mov r14d, dword [rsp + 0x38]
add r10d, dword [rsp + 0x34]
ror r14d, 9
add r10d, r14d
mov r14d, r9d
ror r14d, 5
add r10d, r8d
mov r11d, r14d
mov r14d, edi
add r11d, r10d
mov r10d, edx
shr r10d, 1
xor r10d, edx
add r10d, r11d
add r10d, ebx
mov ebx, dword [rsp + 0x88]
mov dword [rsp + 0x64], r10d
mov r10d, dword [rsp + 0x5c]
mov dword [rsp + 0x5c], esi
lea r10d, [r10 + rbx - 0x5aaaaab5]
mov ebx, dword [rsp + 0x34]
sub r10d, r13d
xor r10d, dword [rsp + 0x84]
mov r13d, r12d
add r10d, esi
rol r14d, 3
mov esi, dword [rsp + 4]
rol r12d, 7
add r10d, r14d
ror ebx, 0xd
add r10d, ebp
mov r14d, edi
add r10d, r12d
mov r12d, dword [rsp + 0xc]
add r10d, esi
rol r12d, 0xd
add r10d, r12d
mov r12d, dword [rsp + 0x1c]
add r10d, dword [rsp + 0x18]
rol r12d, 0x10
add r10d, r12d
mov r12d, dword [rsp + 0x64]
add r10d, r15d
add r10d, ebx
add r10d, dword [rsp + 0x38]
mov ebx, r8d
ror ebx, 9
add r10d, ebx
mov ebx, edx
add r10d, r9d
ror ebx, 5
add ebx, r10d
mov r10d, eax
shr r10d, 1
mov r11d, r10d
xor r11d, eax
lea r10d, [rbx + r11]
mov ebx, r12d
shr ebx, 2
mov r11d, ebx
mov ebx, r12d
xor r11d, r12d
mov r12d, ebp
add r11d, r10d
mov r10d, edi
xor r10d, ebp
xor r10d, r13d
mov r13d, r12d
xor r10d, esi
xor r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x1c]
mov ebp, dword [rsp + 0x34]
mov edi, dword [rsp + 0x38]
mov r12d, dword [rsp + 0x44]
xor r10d, r15d
shl r13d, 8
xor ebp, r10d
xor edi, ebp
xor ebp, dword [rsp + 0x68]
xor edi, r8d
xor r12d, r10d
xor edi, r9d
xor edi, edx
xor edi, eax
xor edi, ebx
mov ebx, edi
mov dword [rsp + 0x6c], edi
mov edi, r14d
xor ebx, r11d
shr edi, 5
xor edi, dword [rcx]
mov r14d, ebx
shl r14d, 5
mov esi, r14d
mov r14, qword [rsp + 0x110]
xor esi, edi
add ebp, esi
mov esi, dword [rsp + 0x38]
mov dword [rsp + 0x68], ebp
mov dword [r14], ebp
mov edi, dword [rcx + 4]
mov r14d, ebx
shr r14d, 7
mov ebp, dword [rsp + 8]
xor edi, r13d
mov r13d, dword [rsp + 0x48]
xor edi, r14d
mov r14d, dword [rsp + 0x50]
shl ebp, 5
xor r14d, r10d
xor esi, r14d
mov r14, qword [rsp + 0x110]
add edi, esi
mov esi, r12d
mov dword [rsp + 0x50], edi
xor esi, r8d
mov dword [r14 + 4], edi
mov edi, dword [rcx + 8]
mov r14d, ebx
shr r14d, 5
xor edi, ebp
xor edi, r14d
mov r14, qword [rsp + 0x110]
lea r12d, [rdi + rsi]
mov edi, dword [rsp + 4]
mov esi, ebx
shr esi, 1
mov dword [rsp + 0x44], r12d
mov ebp, esi
mov dword [r14 + 8], r12d
mov r12d, dword [rsp + 0x18]
shl edi, 5
xor edi, dword [rcx + 0xc]
xor ebp, edi
xor r13d, r10d
shr r12d, 6
mov esi, r13d
xor esi, r9d
lea edi, [rbp + rsi]
mov ebp, dword [rsp + 0xc]
mov esi, ebx
mov dword [r14 + 0xc], edi
xor ebp, dword [rcx + 0x10]
shr esi, 3
mov r13d, ebp
xor r13d, esi
lea esi, [r15*4]
mov ebp, r13d
mov r13d, dword [rsp + 0x4c]
xor r13d, r10d
xor r13d, edx
lea r14d, [rbp + r13]
mov r13, qword [rsp + 0x110]
mov dword [r13 + 0x10], r14d
xor r12d, dword [rcx + 0x14]
mov r13d, ebx
rol r14d, 9
shl r13d, 6
mov ebp, r13d
xor ebp, r12d
mov r12d, dword [rsp + 0x3c]
xor r12d, r10d
mov r13d, r12d
xor r13d, eax
lea r12d, [rbp + r13]
mov r13, qword [rsp + 0x110]
mov dword [r13 + 0x14], r12d
mov r13d, dword [rsp + 0x1c]
mov ebp, dword [rcx + 0x18]
shl r13d, 6
xor ebp, r13d
mov r13d, ebx
shr r13d, 4
xor r13d, ebp
mov ebp, dword [rsp + 0x2c]
xor ebp, r10d
xor ebp, dword [rsp + 0x64]
lea ebp, [r13 + rbp]
mov r13, qword [rsp + 0x110]
mov dword [r13 + 0x18], ebp
xor esi, dword [rcx + 0x1c]
mov r13d, ebx
shr r13d, 0xb
xor esi, r13d
mov r13d, dword [rsp + 0x30]
xor r13d, r10d
xor r13d, r11d
mov r11, qword [rsp + 0x110]
add r13d, esi
mov esi, dword [rsp + 0x34]
mov dword [r11 + 0x1c], r13d
mov r11d, dword [rsp + 0x20]
xor esi, dword [rcx + 0x20]
xor r11d, r15d
mov r15d, r10d
shl r15d, 8
xor esi, ebx
xor r11d, r15d
mov r15, qword [rsp + 0x110]
add r11d, esi
add r11d, r14d
mov r14d, dword [rsp + 0x10]
rol r12d, 0xa
xor r14d, dword [rsp + 0x28]
rol ebp, 0xb
rol r13d, 0xc
mov dword [r15 + 0x20], r11d
mov r15d, dword [rsp + 0x38]
xor r15d, dword [rcx + 0x24]
mov esi, r15d
mov r15d, dword [rsp + 0x24]
xor r15d, dword [rsp + 0x60]
xor esi, ebx
mov r11d, r15d
mov r15d, r10d
shr r15d, 6
xor r11d, r15d
mov r15, qword [rsp + 0x110]
add r11d, esi
add r11d, r12d
mov dword [r15 + 0x24], r11d
xor r8d, dword [rcx + 0x28]
mov r15d, r10d
mov r11d, r14d
shl r15d, 6
xor r11d, r15d
mov r15, qword [rsp + 0x110]
xor r8d, ebx
add r11d, r8d
mov r8d, dword [rsp + 0x40]
add r11d, ebp
mov dword [r15 + 0x28], r11d
xor r9d, dword [rcx + 0x2c]
mov r15d, r10d
xor r8d, dword [rsp + 8]
shl r15d, 4
mov r12d, dword [rsp + 0x44]
xor r9d, ebx
xor r8d, r15d
mov r15, qword [rsp + 0x110]
add r8d, r9d
mov r9d, r10d
add r8d, r13d
shr r9d, 3
mov dword [r15 + 0x2c], r8d
mov r8d, dword [rsp + 0x14]
xor edx, dword [rcx + 0x30]
xor r8d, dword [rsp + 4]
xor edx, ebx
xor r8d, r9d
add r8d, edx
mov edx, dword [rsp + 0x68]
rol edx, 0xd
add r8d, edx
mov edx, dword [rsp + 0x54]
rol r12d, 0xf
mov dword [r15 + 0x30], r8d
xor edx, dword [rsp + 0xc]
mov r8d, r10d
rol edi, 0x10
xor eax, dword [rcx + 0x34]
shr r8d, 4
xor edx, r8d
xor eax, ebx
add eax, edx
mov edx, dword [rsp + 0x50]
rol edx, 0xe
add eax, edx
mov edx, dword [rsp + 0x64]
mov dword [r15 + 0x34], eax
xor edx, dword [rcx + 0x38]
mov eax, dword [rsp + 0x58]
xor eax, dword [rsp + 0x18]
xor ebx, edx
mov edx, r10d
shr r10d, 2
shr edx, 7
xor eax, edx
add eax, ebx
add eax, r12d
mov dword [r15 + 0x38], eax
mov eax, dword [rsp + 0x5c]
xor eax, dword [rsp + 0x1c]
xor r10d, eax
mov eax, dword [rsp + 0x6c]
xor eax, dword [rcx + 0x3c]
add r10d, eax
add edi, r10d
mov dword [r15 + 0x3c], edi
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret