Function at 0x5f4f60
Capabilities:
Hash data using sha1

Disassembly:
push rdi
mov rdi, rcx
push rsi
mov rsi, rdx
sub rsp, 0x44
mov eax, dword [rsi]
bswap eax
mov dword [rsp], eax
mov r8d, dword [rsi + 4]
bswap r8d
mov dword [rsp + 4], r8d
mov ecx, dword [rsi + 8]
bswap ecx
mov dword [rsp + 8], ecx
mov edx, dword [rsi + 0xc]
bswap edx
mov dword [rsp + 0xc], edx
mov eax, dword [rsi + 0x10]
bswap eax
mov dword [rsp + 0x10], eax
mov r8d, dword [rsi + 0x14]
bswap r8d
mov dword [rsp + 0x14], r8d
mov ecx, dword [rsi + 0x18]
bswap ecx
mov dword [rsp + 0x18], ecx
mov edx, dword [rsi + 0x1c]
bswap edx
mov dword [rsp + 0x1c], edx
mov eax, dword [rsi + 0x20]
bswap eax
mov dword [rsp + 0x20], eax
mov r8d, dword [rsi + 0x24]
bswap r8d
mov dword [rsp + 0x24], r8d
mov ecx, dword [rsi + 0x28]
bswap ecx
mov dword [rsp + 0x28], ecx
mov edx, dword [rsi + 0x2c]
bswap edx
mov dword [rsp + 0x2c], edx
mov eax, dword [rsi + 0x30]
bswap eax
mov dword [rsp + 0x30], eax
mov r8d, dword [rsi + 0x34]
bswap r8d
mov dword [rsp + 0x34], r8d
mov ecx, dword [rsi + 0x38]
bswap ecx
mov dword [rsp + 0x38], ecx
mov edx, dword [rsi + 0x3c]
bswap edx
mov dword [rsp + 0x3c], edx
mov eax, dword [rdi]
mov r8d, dword [rdi + 4]
mov ecx, dword [rdi + 8]
mov edx, dword [rdi + 0xc]
mov r9d, dword [rdi + 0x10]
mov esi, 0x5a827999
add r9d, esi
add r9d, dword [rsp]
mov r10d, edx
xor r10d, ecx
and r10d, r8d
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
add edx, esi
add edx, dword [rsp + 4]
mov r10d, ecx
xor r10d, r8d
and r10d, eax
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
add ecx, esi
add ecx, dword [rsp + 8]
mov r10d, r8d
xor r10d, eax
and r10d, r9d
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
add r8d, esi
add r8d, dword [rsp + 0xc]
mov r10d, eax
xor r10d, r9d
and r10d, edx
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
add eax, esi
add eax, dword [rsp + 0x10]
mov r10d, r9d
xor r10d, edx
and r10d, ecx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
add r9d, esi
add r9d, dword [rsp + 0x14]
mov r10d, edx
xor r10d, ecx
and r10d, r8d
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
add edx, esi
add edx, dword [rsp + 0x18]
mov r10d, ecx
xor r10d, r8d
and r10d, eax
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
add ecx, esi
add ecx, dword [rsp + 0x1c]
mov r10d, r8d
xor r10d, eax
and r10d, r9d
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
add r8d, esi
add r8d, dword [rsp + 0x20]
mov r10d, eax
xor r10d, r9d
and r10d, edx
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
add eax, esi
add eax, dword [rsp + 0x24]
mov r10d, r9d
xor r10d, edx
and r10d, ecx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
add r9d, esi
add r9d, dword [rsp + 0x28]
mov r10d, edx
xor r10d, ecx
and r10d, r8d
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
add edx, esi
add edx, dword [rsp + 0x2c]
mov r10d, ecx
xor r10d, r8d
and r10d, eax
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
add ecx, esi
add ecx, dword [rsp + 0x30]
mov r10d, r8d
xor r10d, eax
and r10d, r9d
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
add r8d, esi
add r8d, dword [rsp + 0x34]
mov r10d, eax
xor r10d, r9d
and r10d, edx
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
add eax, esi
add eax, dword [rsp + 0x38]
mov r10d, r9d
xor r10d, edx
and r10d, ecx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
add r9d, esi
add r9d, dword [rsp + 0x3c]
mov r10d, edx
xor r10d, ecx
and r10d, r8d
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp]
xor r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x34]
rol r10d, 1
mov dword [rsp], r10d
add edx, esi
add edx, r10d
mov r10d, ecx
xor r10d, r8d
and r10d, eax
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x38]
rol r10d, 1
mov dword [rsp + 4], r10d
add ecx, esi
add ecx, r10d
mov r10d, r8d
xor r10d, eax
and r10d, r9d
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x28]
xor r10d, dword [rsp + 0x3c]
rol r10d, 1
mov dword [rsp + 8], r10d
add r8d, esi
add r8d, r10d
mov r10d, eax
xor r10d, r9d
and r10d, edx
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp]
rol r10d, 1
mov dword [rsp + 0xc], r10d
add eax, esi
add eax, r10d
mov r10d, r9d
xor r10d, edx
and r10d, ecx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov esi, 0x6ed9eba1
mov r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 4]
rol r10d, 1
mov dword [rsp + 0x10], r10d
add r9d, esi
add r9d, r10d
mov r10d, r8d
xor r10d, ecx
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 8]
rol r10d, 1
mov dword [rsp + 0x14], r10d
add edx, esi
add edx, r10d
mov r10d, eax
xor r10d, r8d
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x38]
xor r10d, dword [rsp + 0xc]
rol r10d, 1
mov dword [rsp + 0x18], r10d
add ecx, esi
add ecx, r10d
mov r10d, r9d
xor r10d, eax
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 0x10]
rol r10d, 1
mov dword [rsp + 0x1c], r10d
add r8d, esi
add r8d, r10d
mov r10d, edx
xor r10d, r9d
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x28]
xor r10d, dword [rsp]
xor r10d, dword [rsp + 0x14]
rol r10d, 1
mov dword [rsp + 0x20], r10d
add eax, esi
add eax, r10d
mov r10d, ecx
xor r10d, edx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0x18]
rol r10d, 1
mov dword [rsp + 0x24], r10d
add r9d, esi
add r9d, r10d
mov r10d, r8d
xor r10d, ecx
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0x28]
xor r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x1c]
rol r10d, 1
mov dword [rsp + 0x28], r10d
add edx, esi
add edx, r10d
mov r10d, eax
xor r10d, r8d
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x20]
rol r10d, 1
mov dword [rsp + 0x2c], r10d
add ecx, esi
add ecx, r10d
mov r10d, r9d
xor r10d, eax
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 0x38]
xor r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x24]
rol r10d, 1
mov dword [rsp + 0x30], r10d
add r8d, esi
add r8d, r10d
mov r10d, edx
xor r10d, r9d
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x28]
rol r10d, 1
mov dword [rsp + 0x34], r10d
add eax, esi
add eax, r10d
mov r10d, ecx
xor r10d, edx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov r10d, dword [rsp + 0x38]
xor r10d, dword [rsp]
xor r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x2c]
rol r10d, 1
mov dword [rsp + 0x38], r10d
add r9d, esi
add r9d, r10d
mov r10d, r8d
xor r10d, ecx
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x30]
rol r10d, 1
mov dword [rsp + 0x3c], r10d
add edx, esi
add edx, r10d
mov r10d, eax
xor r10d, r8d
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp]
xor r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x34]
rol r10d, 1
mov dword [rsp], r10d
add ecx, esi
add ecx, r10d
mov r10d, r9d
xor r10d, eax
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x38]
rol r10d, 1
mov dword [rsp + 4], r10d
add r8d, esi
add r8d, r10d
mov r10d, edx
xor r10d, r9d
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x28]
xor r10d, dword [rsp + 0x3c]
rol r10d, 1
mov dword [rsp + 8], r10d
add eax, esi
add eax, r10d
mov r10d, ecx
xor r10d, edx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp]
rol r10d, 1
mov dword [rsp + 0xc], r10d
add r9d, esi
add r9d, r10d
mov r10d, r8d
xor r10d, ecx
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 4]
rol r10d, 1
mov dword [rsp + 0x10], r10d
add edx, esi
add edx, r10d
mov r10d, eax
xor r10d, r8d
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 8]
rol r10d, 1
mov dword [rsp + 0x14], r10d
add ecx, esi
add ecx, r10d
mov r10d, r9d
xor r10d, eax
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x38]
xor r10d, dword [rsp + 0xc]
rol r10d, 1
mov dword [rsp + 0x18], r10d
add r8d, esi
add r8d, r10d
mov r10d, edx
xor r10d, r9d
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 0x10]
rol r10d, 1
mov dword [rsp + 0x1c], r10d
add eax, esi
add eax, r10d
mov r10d, ecx
xor r10d, edx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov esi, 0x8f1bbcdc
mov r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x28]
xor r10d, dword [rsp]
xor r10d, dword [rsp + 0x14]
rol r10d, 1
mov dword [rsp + 0x20], r10d
add r9d, esi
add r9d, r10d
mov r11d, r8d
and r11d, ecx
mov r10d, r8d
or r10d, ecx
and r10d, edx
or r10d, r11d
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0x18]
rol r10d, 1
mov dword [rsp + 0x24], r10d
add edx, esi
add edx, r10d
mov r11d, eax
and r11d, r8d
mov r10d, eax
or r10d, r8d
and r10d, ecx
or r10d, r11d
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0x28]
xor r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x1c]
rol r10d, 1
mov dword [rsp + 0x28], r10d
add ecx, esi
add ecx, r10d
mov r11d, r9d
and r11d, eax
mov r10d, r9d
or r10d, eax
and r10d, r8d
or r10d, r11d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x20]
rol r10d, 1
mov dword [rsp + 0x2c], r10d
add r8d, esi
add r8d, r10d
mov r11d, edx
and r11d, r9d
mov r10d, edx
or r10d, r9d
and r10d, eax
or r10d, r11d
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 0x38]
xor r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x24]
rol r10d, 1
mov dword [rsp + 0x30], r10d
add eax, esi
add eax, r10d
mov r11d, ecx
and r11d, edx
mov r10d, ecx
or r10d, edx
and r10d, r9d
or r10d, r11d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x28]
rol r10d, 1
mov dword [rsp + 0x34], r10d
add r9d, esi
add r9d, r10d
mov r11d, r8d
and r11d, ecx
mov r10d, r8d
or r10d, ecx
and r10d, edx
or r10d, r11d
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0x38]
xor r10d, dword [rsp]
xor r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x2c]
rol r10d, 1
mov dword [rsp + 0x38], r10d
add edx, esi
add edx, r10d
mov r11d, eax
and r11d, r8d
mov r10d, eax
or r10d, r8d
and r10d, ecx
or r10d, r11d
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x30]
rol r10d, 1
mov dword [rsp + 0x3c], r10d
add ecx, esi
add ecx, r10d
mov r11d, r9d
and r11d, eax
mov r10d, r9d
or r10d, eax
and r10d, r8d
or r10d, r11d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp]
xor r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x34]
rol r10d, 1
mov dword [rsp], r10d
add r8d, esi
add r8d, r10d
mov r11d, edx
and r11d, r9d
mov r10d, edx
or r10d, r9d
and r10d, eax
or r10d, r11d
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x38]
rol r10d, 1
mov dword [rsp + 4], r10d
add eax, esi
add eax, r10d
mov r11d, ecx
and r11d, edx
mov r10d, ecx
or r10d, edx
and r10d, r9d
or r10d, r11d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x28]
xor r10d, dword [rsp + 0x3c]
rol r10d, 1
mov dword [rsp + 8], r10d
add r9d, esi
add r9d, r10d
mov r11d, r8d
and r11d, ecx
mov r10d, r8d
or r10d, ecx
and r10d, edx
or r10d, r11d
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp]
rol r10d, 1
mov dword [rsp + 0xc], r10d
add edx, esi
add edx, r10d
mov r11d, eax
and r11d, r8d
mov r10d, eax
or r10d, r8d
and r10d, ecx
or r10d, r11d
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 4]
rol r10d, 1
mov dword [rsp + 0x10], r10d
add ecx, esi
add ecx, r10d
mov r11d, r9d
and r11d, eax
mov r10d, r9d
or r10d, eax
and r10d, r8d
or r10d, r11d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 8]
rol r10d, 1
mov dword [rsp + 0x14], r10d
add r8d, esi
add r8d, r10d
mov r11d, edx
and r11d, r9d
mov r10d, edx
or r10d, r9d
and r10d, eax
or r10d, r11d
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x38]
xor r10d, dword [rsp + 0xc]
rol r10d, 1
mov dword [rsp + 0x18], r10d
add eax, esi
add eax, r10d
mov r11d, ecx
and r11d, edx
mov r10d, ecx
or r10d, edx
and r10d, r9d
or r10d, r11d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 0x10]
rol r10d, 1
mov dword [rsp + 0x1c], r10d
add r9d, esi
add r9d, r10d
mov r11d, r8d
and r11d, ecx
mov r10d, r8d
or r10d, ecx
and r10d, edx
or r10d, r11d
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x28]
xor r10d, dword [rsp]
xor r10d, dword [rsp + 0x14]
rol r10d, 1
mov dword [rsp + 0x20], r10d
add edx, esi
add edx, r10d
mov r11d, eax
and r11d, r8d
mov r10d, eax
or r10d, r8d
and r10d, ecx
or r10d, r11d
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0x18]
rol r10d, 1
mov dword [rsp + 0x24], r10d
add ecx, esi
add ecx, r10d
mov r11d, r9d
and r11d, eax
mov r10d, r9d
or r10d, eax
and r10d, r8d
or r10d, r11d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 0x28]
xor r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x1c]
rol r10d, 1
mov dword [rsp + 0x28], r10d
add r8d, esi
add r8d, r10d
mov r11d, edx
and r11d, r9d
mov r10d, edx
or r10d, r9d
and r10d, eax
or r10d, r11d
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x20]
rol r10d, 1
mov dword [rsp + 0x2c], r10d
add eax, esi
add eax, r10d
mov r11d, ecx
and r11d, edx
mov r10d, ecx
or r10d, edx
and r10d, r9d
or r10d, r11d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov esi, 0xca62c1d6
mov r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 0x38]
xor r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x24]
rol r10d, 1
mov dword [rsp + 0x30], r10d
add r9d, esi
add r9d, r10d
mov r10d, r8d
xor r10d, ecx
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x28]
rol r10d, 1
mov dword [rsp + 0x34], r10d
add edx, esi
add edx, r10d
mov r10d, eax
xor r10d, r8d
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0x38]
xor r10d, dword [rsp]
xor r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x2c]
rol r10d, 1
mov dword [rsp + 0x38], r10d
add ecx, esi
add ecx, r10d
mov r10d, r9d
xor r10d, eax
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x30]
rol r10d, 1
mov dword [rsp + 0x3c], r10d
add r8d, esi
add r8d, r10d
mov r10d, edx
xor r10d, r9d
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp]
xor r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x34]
rol r10d, 1
mov dword [rsp], r10d
add eax, esi
add eax, r10d
mov r10d, ecx
xor r10d, edx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x38]
rol r10d, 1
mov dword [rsp + 4], r10d
add r9d, esi
add r9d, r10d
mov r10d, r8d
xor r10d, ecx
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x28]
xor r10d, dword [rsp + 0x3c]
rol r10d, 1
mov dword [rsp + 8], r10d
add edx, esi
add edx, r10d
mov r10d, eax
xor r10d, r8d
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp]
rol r10d, 1
mov dword [rsp + 0xc], r10d
add ecx, esi
add ecx, r10d
mov r10d, r9d
xor r10d, eax
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 4]
rol r10d, 1
mov dword [rsp + 0x10], r10d
add r8d, esi
add r8d, r10d
mov r10d, edx
xor r10d, r9d
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 8]
rol r10d, 1
mov dword [rsp + 0x14], r10d
add eax, esi
add eax, r10d
mov r10d, ecx
xor r10d, edx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x38]
xor r10d, dword [rsp + 0xc]
rol r10d, 1
mov dword [rsp + 0x18], r10d
add r9d, esi
add r9d, r10d
mov r10d, r8d
xor r10d, ecx
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 0x10]
rol r10d, 1
mov dword [rsp + 0x1c], r10d
add edx, esi
add edx, r10d
mov r10d, eax
xor r10d, r8d
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0x20]
xor r10d, dword [rsp + 0x28]
xor r10d, dword [rsp]
xor r10d, dword [rsp + 0x14]
rol r10d, 1
mov dword [rsp + 0x20], r10d
add ecx, esi
add ecx, r10d
mov r10d, r9d
xor r10d, eax
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 0x24]
xor r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0x18]
rol r10d, 1
mov dword [rsp + 0x24], r10d
add r8d, esi
add r8d, r10d
mov r10d, edx
xor r10d, r9d
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 0x28]
xor r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 8]
xor r10d, dword [rsp + 0x1c]
rol r10d, 1
mov dword [rsp + 0x28], r10d
add eax, esi
add eax, r10d
mov r10d, ecx
xor r10d, edx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
mov r10d, dword [rsp + 0x2c]
xor r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 0xc]
xor r10d, dword [rsp + 0x20]
rol r10d, 1
mov dword [rsp + 0x2c], r10d
add r9d, esi
add r9d, r10d
mov r10d, r8d
xor r10d, ecx
xor r10d, edx
add r9d, r10d
mov r10d, eax
rol r10d, 5
add r9d, r10d
rol r8d, 0x1e
mov r10d, dword [rsp + 0x30]
xor r10d, dword [rsp + 0x38]
xor r10d, dword [rsp + 0x10]
xor r10d, dword [rsp + 0x24]
rol r10d, 1
mov dword [rsp + 0x30], r10d
add edx, esi
add edx, r10d
mov r10d, eax
xor r10d, r8d
xor r10d, ecx
add edx, r10d
mov r10d, r9d
rol r10d, 5
add edx, r10d
rol eax, 0x1e
mov r10d, dword [rsp + 0x34]
xor r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 0x14]
xor r10d, dword [rsp + 0x28]
rol r10d, 1
mov dword [rsp + 0x34], r10d
add ecx, esi
add ecx, r10d
mov r10d, r9d
xor r10d, eax
xor r10d, r8d
add ecx, r10d
mov r10d, edx
rol r10d, 5
add ecx, r10d
rol r9d, 0x1e
mov r10d, dword [rsp + 0x38]
xor r10d, dword [rsp]
xor r10d, dword [rsp + 0x18]
xor r10d, dword [rsp + 0x2c]
rol r10d, 1
mov dword [rsp + 0x38], r10d
add r8d, esi
add r8d, r10d
mov r10d, edx
xor r10d, r9d
xor r10d, eax
add r8d, r10d
mov r10d, ecx
rol r10d, 5
add r8d, r10d
rol edx, 0x1e
mov r10d, dword [rsp + 0x3c]
xor r10d, dword [rsp + 4]
xor r10d, dword [rsp + 0x1c]
xor r10d, dword [rsp + 0x30]
rol r10d, 1
mov dword [rsp + 0x3c], r10d
add eax, esi
add eax, r10d
mov r10d, ecx
xor r10d, edx
xor r10d, r9d
add eax, r10d
mov r10d, r8d
rol r10d, 5
add eax, r10d
rol ecx, 0x1e
add dword [rdi], eax
add dword [rdi + 4], r8d
add dword [rdi + 8], ecx
add dword [rdi + 0xc], edx
add dword [rdi + 0x10], r9d
add rsp, 0x44
pop rsi
pop rdi
ret