Function at 0x4039e0
Capabilities:
Hash data using murmur3
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7c
movzx eax, byte [edx + 1]
mov dword [ebp - 0x30], ecx
movzx ecx, byte [edx + 4]
shl ecx, 8
push ebx
push esi
movzx esi, byte [edx]
shl esi, 8
or esi, eax
movzx eax, byte [edx + 2]
shl esi, 8
or esi, eax
movzx eax, byte [edx + 3]
shl esi, 8
or esi, eax
movzx eax, byte [edx + 5]
or ecx, eax
shl ecx, 8
movzx eax, byte [edx + 6]
or ecx, eax
shl ecx, 8
movzx eax, byte [edx + 7]
or ecx, eax
mov dword [ebp - 0x74], ecx
movzx ecx, byte [edx + 8]
movzx eax, byte [edx + 9]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0xa]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0xb]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0xd]
mov dword [ebp - 0x70], ecx
movzx ecx, byte [edx + 0xc]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0xe]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0xf]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x11]
mov dword [ebp - 0x6c], ecx
movzx ecx, byte [edx + 0x10]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x12]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x13]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x15]
mov dword [ebp - 0x68], ecx
movzx ecx, byte [edx + 0x14]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x16]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x17]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x19]
mov dword [ebp - 0x64], ecx
movzx ecx, byte [edx + 0x18]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x1a]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x1b]
shl ecx, 8
or ecx, eax
push edi
mov dword [ebp - 0x5c], esi
mov dword [ebp - 0x60], ecx
movzx ecx, byte [edx + 0x1c]
shl ecx, 8
movzx eax, byte [edx + 0x1d]
or ecx, eax
shl ecx, 8
movzx eax, byte [edx + 0x1e]
or ecx, eax
shl ecx, 8
movzx eax, byte [edx + 0x1f]
or ecx, eax
mov dword [ebp - 0x78], ecx
movzx ecx, byte [edx + 0x20]
shl ecx, 8
movzx eax, byte [edx + 0x21]
or ecx, eax
shl ecx, 8
movzx eax, byte [edx + 0x22]
or ecx, eax
shl ecx, 8
movzx eax, byte [edx + 0x23]
or ecx, eax
mov dword [ebp - 0x7c], ecx
movzx ecx, byte [edx + 0x24]
shl ecx, 8
movzx eax, byte [edx + 0x25]
or ecx, eax
movzx eax, byte [edx + 0x26]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x27]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x38], ecx
movzx ecx, byte [edx + 0x28]
movzx eax, byte [edx + 0x29]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x2a]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x2b]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x2d]
mov dword [ebp - 0x34], ecx
movzx ecx, byte [edx + 0x2c]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x2e]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x2f]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x31]
mov dword [ebp - 0x3c], ecx
movzx ecx, byte [edx + 0x30]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x32]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x33]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x35]
mov dword [ebp - 0x40], ecx
movzx ecx, byte [edx + 0x34]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x36]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x37]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x39]
mov dword [ebp - 0x44], ecx
movzx ecx, byte [edx + 0x38]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x3a]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x3b]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x3d]
mov dword [ebp - 8], ecx
movzx ecx, byte [edx + 0x3c]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x3e]
mov esi, dword [ebp - 0x30]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx + 0x3f]
mov edx, dword [ebp - 0x30]
shl ecx, 8
or ecx, eax
mov eax, dword [edx + 8]
mov edi, dword [edx + 0x10]
mov dword [ebp - 0x2c], eax
mov eax, dword [edx + 0x18]
mov ebx, dword [edx + 0xc]
mov dword [ebp - 4], ecx
mov ecx, eax
rol eax, 7
mov dword [ebp - 0x24], edi
mov edi, dword [edx + 0x20]
ror ecx, 0xb
xor ecx, eax
mov eax, dword [esi + 0x18]
mov edx, dword [edx + 0x24]
ror eax, 6
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x5c]
push edi
pop eax
xor eax, dword [esi + 0x1c]
add edx, 0x428a2f98
and eax, dword [esi + 0x18]
xor eax, edi
add eax, ecx
add edx, eax
push esi
pop eax
mov edi, dword [ebp - 0x30]
mov esi, dword [eax + 0x14]
mov eax, dword [ebp - 0x2c]
push eax
pop ecx
rol eax, 0xa
add esi, edx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x2c]
ror eax, 2
xor ecx, eax
push ebx
pop eax
or eax, dword [ebp - 0x2c]
add ecx, edx
and eax, dword [ebp - 0x24]
mov edx, dword [edi + 0x20]
mov dword [ebp - 0x28], eax
mov eax, ebx
and eax, dword [ebp - 0x2c]
or dword [ebp - 0x28], eax
add dword [ebp - 0x28], ecx
push esi
pop ecx
mov eax, esi
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push esi
pop eax
ror eax, 6
xor ecx, eax
mov eax, dword [edi + 0x1c]
xor eax, dword [edi + 0x18]
add ecx, dword [ebp - 0x74]
and eax, esi
xor eax, dword [edi + 0x1c]
add eax, ecx
add edx, 0x71374491
add edx, eax
mov eax, dword [ebp - 0x28]
push eax
pop ecx
rol eax, 0xa
add dword [ebp - 0x24], edx
mov edi, dword [ebp - 0x2c]
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x14], eax
or dword [ebp - 0x14], edi
and dword [ebp - 0x14], ebx
and eax, edi
or dword [ebp - 0x14], eax
mov edi, dword [ebp - 0x24]
add ecx, edx
add dword [ebp - 0x14], ecx
push edi
pop ecx
mov eax, edi
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push edi
pop eax
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x30]
add ecx, dword [ebp - 0x70]
mov edx, dword [eax + 0x18]
mov eax, edx
xor eax, esi
and eax, edi
xor eax, edx
mov edx, dword [ebp - 0x30]
add eax, ecx
mov edx, dword [edx + 0x1c]
add edx, 0xb5c0fbcf
add edx, eax
mov eax, dword [ebp - 0x14]
push eax
pop ecx
rol eax, 0xa
add ebx, edx
mov dword [ebp - 0x58], ebx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x14]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x28]
push eax
pop edi
and eax, dword [ebp - 0x14]
or edi, dword [ebp - 0x14]
add ecx, edx
and edi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x30]
or edi, eax
mov edx, dword [edx + 0x18]
mov dword [ebp - 0x20], edi
add dword [ebp - 0x20], ecx
mov ecx, ebx
push ebx
pop eax
rol eax, 7
add edx, 0xe9b5dba5
ror ecx, 0xb
xor ecx, eax
push ebx
pop eax
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 0x6c]
mov eax, esi
xor eax, dword [ebp - 0x24]
and eax, ebx
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x20]
add dword [ebp - 0x2c], edx
mov ecx, eax
ror ecx, 0xd
rol eax, 0xa
xor ecx, eax
mov eax, dword [ebp - 0x20]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x14]
mov edi, eax
and eax, dword [ebp - 0x20]
or edi, dword [ebp - 0x20]
add ecx, edx
and edi, dword [ebp - 0x28]
mov edx, dword [ebp - 0x2c]
or edi, eax
mov dword [ebp - 0x10], edi
add dword [ebp - 0x10], ecx
mov ecx, edx
push edx
pop eax
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x24]
xor eax, ebx
and eax, edx
xor eax, dword [ebp - 0x24]
lea edx, [esi + 0x3956c25b]
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x10]
push eax
pop ecx
mov esi, dword [ebp - 0x28]
add esi, edx
mov dword [ebp - 0x28], esi
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x20]
mov edi, eax
and eax, dword [ebp - 0x10]
or edi, dword [ebp - 0x10]
add ecx, edx
and edi, dword [ebp - 0x14]
mov edx, dword [ebp - 0x24]
or edi, eax
mov dword [ebp - 0xc], edi
add dword [ebp - 0xc], ecx
mov ecx, esi
push esi
pop eax
mov edi, dword [ebp - 0x14]
rol eax, 7
add edx, 0x59f111f1
ror ecx, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 0x64]
push ebx
pop eax
xor eax, dword [ebp - 0x2c]
and eax, esi
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0xc]
push eax
pop ecx
rol eax, 0xa
add edi, edx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0xc]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10]
push eax
pop ebx
or ebx, dword [ebp - 0xc]
and eax, dword [ebp - 0xc]
and ebx, dword [ebp - 0x20]
add ecx, edx
or ebx, eax
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x24], ebx
add dword [ebp - 0x24], ecx
push edi
pop ecx
ror ecx, 0xb
mov eax, edi
mov ebx, dword [ebp - 0x20]
rol eax, 7
xor ecx, eax
push edi
pop eax
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 0x60]
push esi
pop eax
xor eax, dword [ebp - 0x2c]
add edx, 0x923f82a4
and eax, edi
xor eax, dword [ebp - 0x2c]
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x24]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0xc]
mov esi, eax
and eax, dword [ebp - 0x24]
or esi, dword [ebp - 0x24]
add ecx, edx
and esi, dword [ebp - 0x10]
mov edx, dword [ebp - 0x2c]
or esi, eax
mov dword [ebp - 0x20], esi
add dword [ebp - 0x20], ecx
mov ecx, ebx
push ebx
pop eax
add edx, 0xab1c5ed5
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, ebx
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x28]
xor eax, edi
and eax, ebx
xor eax, dword [ebp - 0x28]
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x20]
add dword [ebp - 0x10], edx
push eax
pop ecx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x20]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x24]
mov esi, eax
or esi, dword [ebp - 0x20]
and eax, dword [ebp - 0x20]
and esi, dword [ebp - 0xc]
add ecx, edx
mov edx, dword [ebp - 0x10]
or esi, eax
mov dword [ebp - 0x14], esi
add dword [ebp - 0x14], ecx
push edx
pop ecx
mov eax, edx
ror ecx, 0xb
rol eax, 7
xor ecx, eax
push edx
pop eax
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 0x7c]
push edi
pop eax
xor eax, ebx
and eax, edx
mov edx, dword [ebp - 0x28]
xor eax, edi
add eax, ecx
add edx, 0xd807aa98
add edx, eax
mov eax, dword [ebp - 0x14]
push eax
pop ecx
add dword [ebp - 0xc], edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x14]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x20]
push eax
pop esi
and eax, dword [ebp - 0x14]
or esi, dword [ebp - 0x14]
add ecx, edx
and esi, dword [ebp - 0x24]
lea edx, [edi + 0x12835b01]
or esi, eax
mov dword [ebp - 0x2c], esi
add dword [ebp - 0x2c], ecx
mov esi, dword [ebp - 0xc]
push esi
pop ecx
mov eax, esi
rol eax, 7
mov edi, dword [ebp - 0x24]
ror ecx, 0xb
xor ecx, eax
push esi
pop eax
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 0x38]
push ebx
pop eax
xor eax, dword [ebp - 0x10]
and eax, esi
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x2c]
push eax
pop ecx
rol eax, 0xa
add edi, edx
mov dword [ebp - 0x24], edi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x2c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x2c]
mov esi, eax
and eax, dword [ebp - 0x14]
or esi, dword [ebp - 0x14]
add ecx, edx
and esi, dword [ebp - 0x20]
or esi, eax
mov dword [ebp - 0x28], esi
add dword [ebp - 0x28], ecx
mov ecx, edi
push edi
pop eax
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push edi
pop eax
ror eax, 6
mov edi, dword [ebp - 0xc]
xor ecx, eax
mov eax, dword [ebp - 0x10]
xor eax, edi
and eax, dword [ebp - 0x24]
xor eax, dword [ebp - 0x10]
add ecx, dword [ebp - 0x34]
lea edx, [ebx + 0x243185be]
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x28]
push eax
pop ecx
rol eax, 0xa
mov ebx, dword [ebp - 0x20]
add ebx, edx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x2c]
push eax
pop esi
and eax, dword [ebp - 0x28]
or esi, dword [ebp - 0x28]
add ecx, edx
and esi, dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
or esi, eax
mov dword [ebp - 0x1c], esi
add dword [ebp - 0x1c], ecx
mov ecx, ebx
mov eax, ebx
mov dword [ebp - 0x20], ebx
rol eax, 7
mov esi, dword [ebp - 0x14]
add edx, 0x550c7dc3
ror ecx, 0xb
xor ecx, eax
mov eax, ebx
ror eax, 6
mov ebx, dword [ebp - 0x24]
xor ecx, eax
add ecx, dword [ebp - 0x3c]
push edi
pop eax
xor eax, ebx
and eax, dword [ebp - 0x20]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x1c]
mov ecx, eax
add esi, edx
mov dword [ebp - 0x14], esi
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x1c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x28]
push eax
pop edi
and eax, dword [ebp - 0x1c]
or edi, dword [ebp - 0x1c]
add ecx, edx
and edi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0xc]
or edi, eax
mov dword [ebp - 0x18], edi
add dword [ebp - 0x18], ecx
push esi
pop ecx
mov eax, esi
add edx, 0x72be5d74
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push esi
pop eax
ror eax, 6
mov esi, dword [ebp - 0x20]
xor ecx, eax
add ecx, dword [ebp - 0x40]
mov eax, ebx
xor eax, esi
and eax, dword [ebp - 0x14]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, eax
rol eax, 0xa
mov edi, dword [ebp - 0x2c]
add edi, edx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x18]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x1c]
push eax
pop ebx
and eax, dword [ebp - 0x18]
or ebx, dword [ebp - 0x18]
add ecx, edx
and ebx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
or ebx, eax
mov dword [ebp - 0x10], ebx
add dword [ebp - 0x10], ecx
push edi
pop ecx
push edi
pop eax
mov dword [ebp - 0x2c], edi
rol eax, 7
mov ebx, dword [ebp - 0x28]
add edx, 0x80deb1fe
ror ecx, 0xb
xor ecx, eax
push edi
pop eax
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 0x44]
mov edi, dword [ebp - 0x14]
push esi
pop eax
xor eax, edi
and eax, dword [ebp - 0x2c]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x10]
push eax
pop ecx
add ebx, edx
mov dword [ebp - 0x28], ebx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x18]
mov esi, eax
and eax, dword [ebp - 0x10]
or esi, dword [ebp - 0x10]
add ecx, edx
and esi, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x20]
or esi, eax
mov dword [ebp - 0x24], esi
add dword [ebp - 0x24], ecx
mov esi, dword [ebp - 0x1c]
push ebx
pop ecx
push ebx
pop eax
rol eax, 7
add edx, 0x9bdc06a7
ror ecx, 0xb
xor ecx, eax
mov eax, ebx
ror eax, 6
mov ebx, dword [ebp - 0x2c]
xor ecx, eax
add ecx, dword [ebp - 8]
push ebx
pop eax
xor eax, edi
and eax, dword [ebp - 0x28]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x24]
add esi, edx
mov dword [ebp - 0x1c], esi
mov ecx, eax
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10]
mov edi, eax
and eax, dword [ebp - 0x24]
or edi, dword [ebp - 0x24]
add ecx, edx
and edi, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
or edi, eax
mov dword [ebp - 0x20], edi
add dword [ebp - 0x20], ecx
push esi
pop ecx
mov eax, esi
add edx, 0xc19bf174
rol eax, 7
mov edi, dword [ebp - 0x18]
ror ecx, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 4]
mov esi, dword [ebp - 0x28]
mov eax, ebx
xor eax, esi
and eax, dword [ebp - 0x1c]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x20]
push eax
pop ecx
add edi, edx
mov dword [ebp - 0x18], edi
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x20]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x24]
push eax
pop ebx
and eax, dword [ebp - 0x20]
or ebx, dword [ebp - 0x20]
add ecx, edx
and ebx, dword [ebp - 0x10]
or ebx, eax
mov dword [ebp - 0x14], ebx
add dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x74]
mov ebx, dword [ebp - 8]
push ecx
pop edx
rol edx, 0xe
mov eax, ecx
ror eax, 7
xor edx, eax
mov eax, ecx
shr eax, 3
xor edx, eax
add edx, dword [ebp - 0x38]
mov ecx, ebx
rol ecx, 0xf
push ebx
pop eax
rol eax, 0xd
xor ecx, eax
mov eax, ebx
shr eax, 0xa
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x5c]
mov ecx, edi
push edi
pop eax
mov dword [ebp - 0xc], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push edi
pop eax
ror eax, 6
xor ecx, eax
mov edi, dword [ebp - 0x1c]
add ecx, edx
mov edx, dword [ebp - 0x2c]
mov eax, esi
xor eax, edi
and eax, dword [ebp - 0x18]
add edx, 0xe49b69c1
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x14]
push eax
pop ecx
mov ebx, dword [ebp - 0x10]
rol eax, 0xa
add ebx, edx
mov dword [ebp - 0x10], ebx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x14]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x20]
push eax
pop esi
and eax, dword [ebp - 0x14]
or esi, dword [ebp - 0x14]
add ecx, edx
and esi, dword [ebp - 0x24]
or esi, eax
mov dword [ebp - 0x2c], esi
add dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x70]
mov esi, dword [ebp - 4]
mov edx, ecx
rol edx, 0xe
push ecx
pop eax
ror eax, 7
xor edx, eax
mov eax, ecx
shr eax, 3
xor edx, eax
add edx, dword [ebp - 0x34]
push esi
pop ecx
rol ecx, 0xf
mov eax, esi
rol eax, 0xd
xor ecx, eax
push esi
pop eax
shr eax, 0xa
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x74]
add edx, ecx
mov esi, dword [ebp - 0x24]
push ebx
pop ecx
push ebx
pop eax
rol eax, 7
mov dword [ebp - 0x48], edx
ror ecx, 0xb
xor ecx, eax
mov eax, ebx
ror eax, 6
mov ebx, dword [ebp - 0x18]
xor ecx, eax
mov eax, edi
xor eax, ebx
and eax, dword [ebp - 0x10]
add ecx, edx
mov edx, dword [ebp - 0x28]
xor eax, edi
add eax, ecx
add edx, 0xefbe4786
add edx, eax
mov eax, dword [ebp - 0x2c]
push eax
pop ecx
add esi, edx
ror ecx, 0xd
mov dword [ebp - 0x24], esi
rol eax, 0xa
xor ecx, eax
mov eax, dword [ebp - 0x2c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x2c]
mov edi, eax
and eax, dword [ebp - 0x14]
or edi, dword [ebp - 0x14]
add ecx, edx
and edi, dword [ebp - 0x20]
or edi, eax
mov dword [ebp - 0x28], edi
add dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x6c]
mov edi, dword [ebp - 0xc]
push ecx
pop edx
rol edx, 0xe
push ecx
pop eax
ror eax, 7
xor edx, eax
push ecx
pop eax
shr eax, 3
xor edx, eax
add edx, dword [ebp - 0x3c]
mov ecx, edi
rol ecx, 0xf
push edi
pop eax
rol eax, 0xd
xor ecx, eax
push edi
pop eax
shr eax, 0xa
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x70]
add edx, ecx
mov ecx, esi
push esi
pop eax
mov dword [ebp - 0x4c], edx
rol eax, 7
mov edi, dword [ebp - 0x20]
ror ecx, 0xb
xor ecx, eax
push esi
pop eax
ror eax, 6
mov esi, dword [ebp - 0x10]
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x1c]
mov eax, ebx
xor eax, esi
and eax, dword [ebp - 0x24]
add edx, 0xfc19dc6
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x28]
mov ecx, eax
add edi, edx
rol eax, 0xa
mov dword [ebp - 0x20], edi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x2c]
mov ebx, eax
or ebx, dword [ebp - 0x28]
and eax, dword [ebp - 0x28]
and ebx, dword [ebp - 0x14]
add ecx, edx
or ebx, eax
mov dword [ebp - 0x1c], ebx
add dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x68]
push ecx
pop edx
mov eax, ecx
ror eax, 7
rol edx, 0xe
xor edx, eax
push ecx
pop eax
shr eax, 3
xor edx, eax
mov ebx, dword [ebp - 0x48]
add edx, dword [ebp - 0x40]
mov ecx, ebx
rol ecx, 0xf
push ebx
pop eax
rol eax, 0xd
xor ecx, eax
mov eax, ebx
shr eax, 0xa
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x6c]
add edx, ecx
mov ecx, edi
mov eax, edi
mov dword [ebp - 0x50], edx
rol eax, 7
mov ebx, dword [ebp - 0x14]
ror ecx, 0xb
xor ecx, eax
push edi
pop eax
ror eax, 6
xor ecx, eax
mov edi, dword [ebp - 0x24]
add ecx, edx
mov edx, dword [ebp - 0x18]
push esi
pop eax
xor eax, edi
and eax, dword [ebp - 0x20]
add edx, 0x240ca1cc
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x1c]
push eax
pop ecx
add ebx, edx
rol eax, 0xa
mov dword [ebp - 0x14], ebx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x1c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x28]
push eax
pop esi
and eax, dword [ebp - 0x1c]
or esi, dword [ebp - 0x1c]
add ecx, edx
and esi, dword [ebp - 0x2c]
or esi, eax
mov dword [ebp - 0x18], esi
add dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x64]
mov esi, dword [ebp - 0x4c]
push ecx
pop edx
rol edx, 0xe
mov eax, ecx
ror eax, 7
xor edx, eax
mov eax, ecx
shr eax, 3
xor edx, eax
add edx, dword [ebp - 0x44]
mov ecx, esi
rol ecx, 0xf
mov eax, esi
rol eax, 0xd
xor ecx, eax
push esi
pop eax
shr eax, 0xa
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x68]
add edx, ecx
push ebx
pop ecx
mov eax, ebx
mov dword [ebp - 0x54], edx
ror ecx, 0xb
rol eax, 7
xor ecx, eax
mov eax, ebx
ror eax, 6
xor ecx, eax
mov ebx, dword [ebp - 0x20]
add ecx, edx
mov edx, dword [ebp - 0x10]
push edi
pop eax
xor eax, ebx
and eax, dword [ebp - 0x14]
add edx, 0x2de92c6f
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, eax
mov esi, dword [ebp - 0x2c]
rol eax, 0xa
add esi, edx
mov dword [ebp - 0x2c], esi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x18]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x1c]
push eax
pop edi
and eax, dword [ebp - 0x18]
or edi, dword [ebp - 0x18]
add ecx, edx
and edi, dword [ebp - 0x28]
or edi, eax
mov dword [ebp - 0x10], edi
add dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x60]
mov edi, dword [ebp - 0x50]
mov edx, ecx
rol edx, 0xe
mov eax, ecx
ror eax, 7
xor edx, eax
push ecx
pop eax
shr eax, 3
xor edx, eax
add edx, dword [ebp - 8]
mov ecx, edi
rol ecx, 0xf
push edi
pop eax
rol eax, 0xd
xor ecx, eax
mov eax, edi
shr eax, 0xa
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x64]
add edx, ecx
mov edi, dword [ebp - 0x28]
mov ecx, esi
mov eax, esi
rol eax, 7
mov dword [ebp - 0x58], edx
ror ecx, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
mov esi, dword [ebp - 0x14]
xor ecx, eax
mov eax, ebx
xor eax, esi
and eax, dword [ebp - 0x2c]
add ecx, edx
mov edx, dword [ebp - 0x24]
xor eax, ebx
add eax, ecx
add edx, 0x4a7484aa
add edx, eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
add edi, edx
ror ecx, 0xd
mov dword [ebp - 0x28], edi
rol eax, 0xa
xor ecx, eax
mov eax, dword [ebp - 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x18]
mov ebx, eax
and eax, dword [ebp - 0x10]
or ebx, dword [ebp - 0x10]
add ecx, edx
and ebx, dword [ebp - 0x1c]
or ebx, eax
mov dword [ebp - 0x24], ebx
add dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x78]
mov ebx, dword [ebp - 0x54]
push ecx
pop edx
rol edx, 0xe
push ecx
pop eax
ror eax, 7
xor edx, eax
mov eax, ecx
shr eax, 3
xor edx, eax
add edx, dword [ebp - 4]
mov ecx, ebx
rol ecx, 0xf
push ebx
pop eax
rol eax, 0xd
xor ecx, eax
mov eax, ebx
shr eax, 0xa
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x60]
add edx, ecx
push edi
pop ecx
push edi
pop eax
mov dword [ebp - 0x5c], edx
rol eax, 7
mov ebx, dword [ebp - 0x1c]
ror ecx, 0xb
xor ecx, eax
mov eax, edi
ror eax, 6
mov edi, dword [ebp - 0x2c]
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x20]
push edi
pop eax
xor eax, esi
and eax, dword [ebp - 0x28]
add edx, 0x5cb0a9dc
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x24]
mov ecx, eax
add ebx, edx
rol eax, 0xa
mov dword [ebp - 0x1c], ebx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10]
mov esi, eax
or esi, dword [ebp - 0x24]
and eax, dword [ebp - 0x24]
and esi, dword [ebp - 0x18]
add ecx, edx
or esi, eax
mov dword [ebp - 0x20], esi
add dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x7c]
push ecx
pop edx
push ecx
pop eax
ror eax, 7
rol edx, 0xe
xor edx, eax
mov eax, ecx
mov esi, dword [ebp - 0x58]
shr eax, 3
xor edx, eax
add edx, dword [ebp - 0xc]
mov ecx, esi
rol ecx, 0xf
mov eax, esi
rol eax, 0xd
xor ecx, eax
push esi
pop eax
shr eax, 0xa
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x78]
add edx, ecx
push ebx
pop ecx
mov eax, ebx
mov dword [ebp - 0x60], edx
rol eax, 7
mov esi, dword [ebp - 0x18]
ror ecx, 0xb
xor ecx, eax
push ebx
pop eax
ror eax, 6
xor ecx, eax
mov ebx, dword [ebp - 0x28]
add ecx, edx
mov edx, dword [ebp - 0x14]
mov eax, edi
xor eax, ebx
and eax, dword [ebp - 0x1c]
add edx, 0x76f988da
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x20]
push eax
pop ecx
add esi, edx
rol eax, 0xa
mov dword [ebp - 0x18], esi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x20]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x24]
push eax
pop edi
and eax, dword [ebp - 0x20]
or edi, dword [ebp - 0x20]
add ecx, edx
and edi, dword [ebp - 0x10]
or edi, eax
mov dword [ebp - 0x14], edi
add dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x5c]
mov edi, dword [ebp - 0x38]
mov edx, ecx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x48]
push edi
pop ecx
rol ecx, 0xe
push edi
pop eax
ror eax, 7
xor ecx, eax
push edi
pop eax
shr eax, 3
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x7c]
add edx, ecx
mov ecx, esi
mov eax, esi
mov dword [ebp - 0x64], edx
ror ecx, 0xb
rol eax, 7
xor ecx, eax
mov eax, esi
ror eax, 6
xor ecx, eax
mov esi, dword [ebp - 0x1c]
add ecx, edx
mov edx, dword [ebp - 0x2c]
push ebx
pop eax
xor eax, esi
and eax, dword [ebp - 0x18]
add edx, 0x983e5152
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x14]
push eax
pop ecx
mov edi, dword [ebp - 0x10]
rol eax, 0xa
add edi, edx
mov dword [ebp - 0x10], edi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x14]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x20]
push eax
pop ebx
and eax, dword [ebp - 0x14]
or ebx, dword [ebp - 0x14]
add ecx, edx
and ebx, dword [ebp - 0x24]
or ebx, eax
mov dword [ebp - 0x2c], ebx
add dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x60]
mov ebx, dword [ebp - 0x34]
mov edx, ecx
rol edx, 0xf
mov eax, ecx
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x4c]
mov ecx, ebx
rol ecx, 0xe
push ebx
pop eax
ror eax, 7
xor ecx, eax
mov eax, ebx
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x24]
mov ecx, edi
mov eax, edi
mov dword [ebp - 0x38], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push edi
pop eax
ror eax, 6
mov edi, dword [ebp - 0x18]
xor ecx, eax
push esi
pop eax
xor eax, edi
and eax, dword [ebp - 0x10]
add ecx, edx
mov edx, dword [ebp - 0x28]
xor eax, esi
add eax, ecx
add edx, 0xa831c66d
add edx, eax
mov eax, dword [ebp - 0x2c]
push eax
pop ecx
add ebx, edx
ror ecx, 0xd
mov dword [ebp - 0x24], ebx
rol eax, 0xa
xor ecx, eax
mov eax, dword [ebp - 0x2c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x2c]
mov esi, eax
and eax, dword [ebp - 0x14]
or esi, dword [ebp - 0x14]
add ecx, edx
and esi, dword [ebp - 0x20]
or esi, eax
mov dword [ebp - 0x28], esi
add dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x64]
mov esi, dword [ebp - 0x3c]
mov edx, ecx
rol edx, 0xf
mov eax, ecx
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x50]
mov ecx, esi
rol ecx, 0xe
push esi
pop eax
ror eax, 7
xor ecx, eax
push esi
pop eax
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x34]
push ebx
pop ecx
mov eax, ebx
mov dword [ebp - 0x68], edx
mov esi, dword [ebp - 0x20]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push ebx
pop eax
ror eax, 6
mov ebx, dword [ebp - 0x10]
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x1c]
push edi
pop eax
xor eax, ebx
and eax, dword [ebp - 0x24]
add edx, 0xb00327c8
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x28]
push eax
pop ecx
add esi, edx
rol eax, 0xa
mov dword [ebp - 0x20], esi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x2c]
push eax
pop edi
or edi, dword [ebp - 0x28]
and eax, dword [ebp - 0x28]
and edi, dword [ebp - 0x14]
add ecx, edx
or edi, eax
mov dword [ebp - 0x1c], edi
add dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x38]
push ecx
pop edx
mov eax, ecx
rol eax, 0xd
rol edx, 0xf
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
mov edi, dword [ebp - 0x40]
add edx, dword [ebp - 0x54]
push edi
pop ecx
rol ecx, 0xe
push edi
pop eax
ror eax, 7
xor ecx, eax
mov eax, edi
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x3c]
mov ecx, esi
push esi
pop eax
mov dword [ebp - 0x3c], edx
mov edi, dword [ebp - 0x14]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push esi
pop eax
ror eax, 6
xor ecx, eax
mov esi, dword [ebp - 0x24]
add ecx, edx
mov edx, dword [ebp - 0x18]
push ebx
pop eax
xor eax, esi
and eax, dword [ebp - 0x20]
add edx, 0xbf597fc7
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x1c]
push eax
pop ecx
add edi, edx
rol eax, 0xa
mov dword [ebp - 0x14], edi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x1c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x28]
push eax
pop ebx
and eax, dword [ebp - 0x1c]
or ebx, dword [ebp - 0x1c]
add ecx, edx
and ebx, dword [ebp - 0x2c]
or ebx, eax
mov dword [ebp - 0x18], ebx
add dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x68]
mov ebx, dword [ebp - 0x44]
mov edx, ecx
rol edx, 0xf
mov eax, ecx
rol eax, 0xd
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x58]
mov ecx, ebx
rol ecx, 0xe
push ebx
pop eax
ror eax, 7
xor ecx, eax
mov eax, ebx
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x40]
push edi
pop ecx
push edi
pop eax
mov dword [ebp - 0x40], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push edi
pop eax
ror eax, 6
xor ecx, eax
mov edi, dword [ebp - 0x20]
add ecx, edx
mov edx, dword [ebp - 0x10]
mov eax, esi
xor eax, edi
and eax, dword [ebp - 0x14]
add edx, 0xc6e00bf3
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, eax
rol eax, 0xa
mov ebx, dword [ebp - 0x2c]
add ebx, edx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x18]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x1c]
mov esi, eax
and eax, dword [ebp - 0x18]
or esi, dword [ebp - 0x18]
add ecx, edx
and esi, dword [ebp - 0x28]
mov dword [ebp - 0x2c], ebx
or esi, eax
mov dword [ebp - 0x10], esi
add dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x3c]
mov esi, dword [ebp - 8]
mov edx, ecx
rol edx, 0xf
mov eax, ecx
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x5c]
push esi
pop ecx
rol ecx, 0xe
mov eax, esi
ror eax, 7
xor ecx, eax
push esi
pop eax
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x28]
push ebx
pop ecx
push ebx
pop eax
mov dword [ebp - 0x44], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, ebx
ror eax, 6
mov ebx, dword [ebp - 0x14]
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x24]
push edi
pop eax
xor eax, ebx
and eax, dword [ebp - 0x2c]
add edx, 0xd5a79147
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x10]
push eax
pop ecx
add esi, edx
rol eax, 0xa
mov dword [ebp - 0x28], esi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x18]
mov edi, eax
and eax, dword [ebp - 0x10]
or edi, dword [ebp - 0x10]
add ecx, edx
and edi, dword [ebp - 0x1c]
or edi, eax
mov dword [ebp - 0x24], edi
add dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x40]
mov edi, dword [ebp - 4]
mov edx, ecx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x60]
push edi
pop ecx
rol ecx, 0xe
push edi
pop eax
ror eax, 7
xor ecx, eax
push edi
pop eax
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 8]
push esi
pop ecx
mov eax, esi
mov dword [ebp - 0x6c], edx
mov edi, dword [ebp - 0x1c]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
mov esi, dword [ebp - 0x2c]
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x20]
mov eax, esi
xor eax, ebx
and eax, dword [ebp - 0x28]
add edx, 0x6ca6351
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x24]
push eax
pop ecx
add edi, edx
rol eax, 0xa
mov dword [ebp - 0x1c], edi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10]
mov ebx, eax
or ebx, dword [ebp - 0x24]
and eax, dword [ebp - 0x24]
and ebx, dword [ebp - 0x18]
add ecx, edx
or ebx, eax
mov dword [ebp - 0x20], ebx
add dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x44]
mov ebx, dword [ebp - 0xc]
mov edx, ecx
mov eax, ecx
rol eax, 0xd
rol edx, 0xf
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
mov ecx, ebx
rol ecx, 0xe
add edx, dword [ebp - 0x64]
push ebx
pop eax
ror eax, 7
xor ecx, eax
mov eax, ebx
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 4]
mov ecx, edi
push edi
pop eax
mov dword [ebp - 0x70], edx
mov ebx, dword [ebp - 0x18]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, edi
ror eax, 6
xor ecx, eax
mov edi, dword [ebp - 0x28]
add ecx, edx
mov edx, dword [ebp - 0x14]
push esi
pop eax
xor eax, edi
and eax, dword [ebp - 0x1c]
add edx, 0x14292967
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x20]
mov ecx, eax
add ebx, edx
rol eax, 0xa
mov dword [ebp - 0x18], ebx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x20]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x24]
mov esi, eax
and eax, dword [ebp - 0x20]
or esi, dword [ebp - 0x20]
add ecx, edx
and esi, dword [ebp - 0x10]
or esi, eax
mov dword [ebp - 0x14], esi
add dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x6c]
mov esi, dword [ebp - 0x48]
push ecx
pop edx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x38]
mov ecx, esi
rol ecx, 0xe
mov eax, esi
ror eax, 7
xor ecx, eax
push esi
pop eax
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0xc]
mov ecx, ebx
mov eax, ebx
mov dword [ebp - 0x74], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, ebx
ror eax, 6
mov ebx, dword [ebp - 0x1c]
xor ecx, eax
push edi
pop eax
xor eax, ebx
and eax, dword [ebp - 0x18]
add ecx, edx
xor eax, edi
add eax, ecx
mov edx, dword [ebp - 0x2c]
add edx, 0x27b70a85
add edx, eax
mov eax, dword [ebp - 0x14]
mov ecx, eax
rol eax, 0xa
mov esi, dword [ebp - 0x10]
add esi, edx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x14]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x20]
mov edi, eax
and eax, dword [ebp - 0x14]
or edi, dword [ebp - 0x14]
add ecx, edx
and edi, dword [ebp - 0x24]
mov dword [ebp - 0x10], esi
or edi, eax
mov dword [ebp - 0x2c], edi
add dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x70]
mov edi, dword [ebp - 0x4c]
push ecx
pop edx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x68]
mov ecx, edi
rol ecx, 0xe
push edi
pop eax
ror eax, 7
xor ecx, eax
mov eax, edi
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x48]
mov edi, dword [ebp - 0x24]
mov ecx, esi
push esi
pop eax
mov dword [ebp - 0x48], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
mov esi, dword [ebp - 0x18]
xor ecx, eax
push ebx
pop eax
xor eax, esi
and eax, dword [ebp - 0x10]
add ecx, edx
mov edx, dword [ebp - 0x28]
xor eax, ebx
add eax, ecx
add edx, 0x2e1b2138
add edx, eax
mov eax, dword [ebp - 0x2c]
push eax
pop ecx
add edi, edx
rol eax, 0xa
mov dword [ebp - 0x24], edi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x2c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x2c]
mov ebx, eax
and eax, dword [ebp - 0x14]
or ebx, dword [ebp - 0x14]
add ecx, edx
and ebx, dword [ebp - 0x20]
or ebx, eax
mov dword [ebp - 0x28], ebx
add dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x74]
mov ebx, dword [ebp - 0x50]
push ecx
pop edx
rol edx, 0xf
mov eax, ecx
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x3c]
mov ecx, ebx
rol ecx, 0xe
push ebx
pop eax
ror eax, 7
xor ecx, eax
push ebx
pop eax
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x4c]
push edi
pop ecx
mov eax, edi
mov dword [ebp - 0x4c], edx
mov ebx, dword [ebp - 0x20]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, edi
ror eax, 6
mov edi, dword [ebp - 0x10]
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x1c]
mov eax, esi
xor eax, edi
and eax, dword [ebp - 0x24]
add edx, 0x4d2c6dfc
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x28]
push eax
pop ecx
add ebx, edx
rol eax, 0xa
mov dword [ebp - 0x20], ebx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x2c]
mov esi, eax
or esi, dword [ebp - 0x28]
and eax, dword [ebp - 0x28]
and esi, dword [ebp - 0x14]
add ecx, edx
or esi, eax
mov dword [ebp - 0x1c], esi
add dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x54]
push ecx
pop edx
push ecx
pop eax
rol eax, 0xd
rol edx, 0xf
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
push esi
pop ecx
mov eax, esi
rol ecx, 0xe
ror eax, 7
xor ecx, eax
add edx, dword [ebp - 0x40]
push esi
pop eax
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x50]
push ebx
pop ecx
ror ecx, 0xb
mov eax, ebx
mov dword [ebp - 0x50], edx
rol eax, 7
xor ecx, eax
mov eax, ebx
ror eax, 6
xor ecx, eax
mov ebx, dword [ebp - 0x24]
add ecx, edx
mov edx, dword [ebp - 0x18]
mov eax, edi
xor eax, ebx
and eax, dword [ebp - 0x20]
add edx, 0x53380d13
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x1c]
mov ecx, eax
mov esi, dword [ebp - 0x14]
rol eax, 0xa
add esi, edx
mov dword [ebp - 0x14], esi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x1c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x28]
push eax
pop edi
and eax, dword [ebp - 0x1c]
or edi, dword [ebp - 0x1c]
add ecx, edx
and edi, dword [ebp - 0x2c]
or edi, eax
mov dword [ebp - 0x18], edi
add dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x58]
mov edx, ecx
rol edx, 0xf
mov eax, ecx
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x44]
push edi
pop ecx
rol ecx, 0xe
mov eax, edi
ror eax, 7
xor ecx, eax
mov eax, edi
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x54]
push esi
pop ecx
push esi
pop eax
mov dword [ebp - 0x54], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
mov esi, dword [ebp - 0x20]
xor ecx, eax
push ebx
pop eax
xor eax, esi
and eax, dword [ebp - 0x14]
xor eax, ebx
add ecx, edx
add eax, ecx
mov edx, dword [ebp - 0x10]
add edx, 0x650a7354
add edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, eax
rol eax, 0xa
mov edi, dword [ebp - 0x2c]
add edi, edx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x18]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x1c]
mov ebx, eax
and eax, dword [ebp - 0x18]
or ebx, dword [ebp - 0x18]
add ecx, edx
and ebx, dword [ebp - 0x28]
mov dword [ebp - 0x2c], edi
or ebx, eax
mov dword [ebp - 8], ebx
add dword [ebp - 8], ecx
mov ecx, dword [ebp - 0x50]
mov ebx, dword [ebp - 0x5c]
mov edx, ecx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x6c]
mov ecx, ebx
rol ecx, 0xe
push ebx
pop eax
ror eax, 7
xor ecx, eax
mov eax, ebx
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x58]
push edi
pop ecx
mov eax, edi
mov ebx, dword [ebp - 0x28]
mov dword [ebp - 0x58], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push edi
pop eax
ror eax, 6
mov edi, dword [ebp - 0x14]
xor ecx, eax
push esi
pop eax
xor eax, edi
and eax, dword [ebp - 0x2c]
add ecx, edx
mov edx, dword [ebp - 0x24]
xor eax, esi
add eax, ecx
add edx, 0x766a0abb
add edx, eax
mov eax, dword [ebp - 8]
push eax
pop ecx
add ebx, edx
rol eax, 0xa
mov dword [ebp - 0x28], ebx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 8]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x18]
mov esi, eax
or esi, dword [ebp - 8]
and esi, dword [ebp - 0x1c]
and eax, dword [ebp - 8]
or esi, eax
add ecx, edx
mov dword [ebp - 0x24], esi
add dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x60]
push ecx
pop edx
rol edx, 0xf
mov eax, ecx
rol eax, 0xd
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x70]
mov ecx, esi
rol ecx, 0xe
push esi
pop eax
ror eax, 7
xor ecx, eax
mov eax, esi
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x5c]
push ebx
pop ecx
mov eax, ebx
mov dword [ebp - 0x5c], edx
mov esi, dword [ebp - 0x1c]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push ebx
pop eax
ror eax, 6
mov ebx, dword [ebp - 0x2c]
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x20]
push ebx
pop eax
xor eax, edi
and eax, dword [ebp - 0x28]
add edx, 0x81c2c92e
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x24]
push eax
pop ecx
add esi, edx
rol eax, 0xa
mov dword [ebp - 0x1c], esi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 8]
push eax
pop edi
and eax, dword [ebp - 0x24]
or edi, dword [ebp - 0x24]
add ecx, edx
and edi, dword [ebp - 0x18]
or edi, eax
mov dword [ebp - 0x20], edi
add dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x58]
mov edi, dword [ebp - 0x64]
push ecx
pop edx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
push edi
pop ecx
push edi
pop eax
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edi
shr eax, 3
xor ecx, eax
add edx, dword [ebp - 0x74]
push esi
pop eax
rol eax, 7
add edx, ecx
add edx, dword [ebp - 0x60]
mov ecx, esi
mov dword [ebp - 0x60], edx
mov edi, dword [ebp - 0x18]
ror ecx, 0xb
xor ecx, eax
push esi
pop eax
ror eax, 6
xor ecx, eax
mov esi, dword [ebp - 0x28]
add ecx, edx
mov edx, dword [ebp - 0x14]
push ebx
pop eax
xor eax, esi
and eax, dword [ebp - 0x1c]
add edx, 0x92722c85
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x20]
push eax
pop ecx
add edi, edx
rol eax, 0xa
mov dword [ebp - 0x18], edi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x20]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x24]
push eax
pop ebx
and eax, dword [ebp - 0x20]
or ebx, dword [ebp - 0x20]
add ecx, edx
and ebx, dword [ebp - 8]
or ebx, eax
mov dword [ebp - 0x10], ebx
add dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x5c]
mov ebx, dword [ebp - 0x38]
push ecx
pop edx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x48]
push ebx
pop ecx
rol ecx, 0xe
push ebx
pop eax
ror eax, 7
xor ecx, eax
push ebx
pop eax
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x64]
mov ecx, edi
push edi
pop eax
mov dword [ebp - 0x64], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push edi
pop eax
ror eax, 6
mov edi, dword [ebp - 0x1c]
xor ecx, eax
push esi
pop eax
xor eax, edi
and eax, dword [ebp - 0x18]
add ecx, edx
mov edx, dword [ebp - 0x2c]
xor eax, esi
add eax, ecx
add edx, 0xa2bfe8a1
add edx, eax
mov eax, dword [ebp - 0x10]
mov ecx, eax
rol eax, 0xa
mov ebx, dword [ebp - 8]
add ebx, edx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x20]
push eax
pop esi
and eax, dword [ebp - 0x10]
or esi, dword [ebp - 0x10]
add ecx, edx
and esi, dword [ebp - 0x24]
mov dword [ebp - 8], ebx
or esi, eax
mov dword [ebp - 4], esi
add dword [ebp - 4], ecx
mov ecx, dword [ebp - 0x60]
mov esi, dword [ebp - 0x68]
mov edx, ecx
rol edx, 0xf
mov eax, ecx
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x4c]
mov ecx, esi
rol ecx, 0xe
push esi
pop eax
ror eax, 7
xor ecx, eax
mov eax, esi
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x38]
push ebx
pop ecx
push ebx
pop eax
mov esi, dword [ebp - 0x24]
mov dword [ebp - 0x34], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push ebx
pop eax
ror eax, 6
mov ebx, dword [ebp - 0x18]
xor ecx, eax
mov eax, edi
xor eax, ebx
and eax, dword [ebp - 8]
add ecx, edx
mov edx, dword [ebp - 0x28]
xor eax, edi
add eax, ecx
add edx, 0xa81a664b
add edx, eax
mov eax, dword [ebp - 4]
mov ecx, eax
add esi, edx
rol eax, 0xa
mov dword [ebp - 0x24], esi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 4]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 4]
mov edi, eax
or edi, dword [ebp - 0x10]
and eax, dword [ebp - 0x10]
and edi, dword [ebp - 0x20]
or edi, eax
mov dword [ebp - 0x28], edi
add ecx, edx
add dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x64]
mov edi, dword [ebp - 0x3c]
mov edx, ecx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x50]
push edi
pop ecx
rol ecx, 0xe
push edi
pop eax
ror eax, 7
xor ecx, eax
push edi
pop eax
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x68]
mov ecx, esi
push esi
pop eax
mov dword [ebp - 0x68], edx
mov edi, dword [ebp - 0x20]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push esi
pop eax
ror eax, 6
mov esi, dword [ebp - 8]
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x1c]
mov eax, ebx
xor eax, esi
and eax, dword [ebp - 0x24]
add edx, 0xc24b8b70
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x28]
push eax
pop ecx
add edi, edx
rol eax, 0xa
mov dword [ebp - 0x20], edi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 4]
push eax
pop ebx
and eax, dword [ebp - 0x28]
or ebx, dword [ebp - 0x28]
add ecx, edx
and ebx, dword [ebp - 0x10]
or ebx, eax
mov dword [ebp - 0xc], ebx
add dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0x34]
mov ebx, dword [ebp - 0x40]
mov edx, ecx
rol edx, 0xf
mov eax, ecx
rol eax, 0xd
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x54]
mov ecx, ebx
rol ecx, 0xe
mov eax, ebx
ror eax, 7
xor ecx, eax
mov eax, ebx
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x3c]
mov ecx, edi
ror ecx, 0xb
mov eax, edi
mov dword [ebp - 0x3c], edx
rol eax, 7
xor ecx, eax
mov eax, edi
ror eax, 6
xor ecx, eax
mov edi, dword [ebp - 0x24]
add ecx, edx
mov edx, dword [ebp - 0x18]
mov eax, esi
xor eax, edi
and eax, dword [ebp - 0x20]
add edx, 0xc76c51a3
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0xc]
push eax
pop ecx
mov ebx, dword [ebp - 0x10]
rol eax, 0xa
add ebx, edx
mov dword [ebp - 0x10], ebx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0xc]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x28]
push eax
pop esi
and eax, dword [ebp - 0xc]
or esi, dword [ebp - 0xc]
add ecx, edx
and esi, dword [ebp - 4]
or esi, eax
mov dword [ebp - 0x2c], esi
add dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x68]
mov esi, dword [ebp - 0x44]
mov edx, ecx
rol edx, 0xf
mov eax, ecx
rol eax, 0xd
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x58]
push esi
pop ecx
rol ecx, 0xe
push esi
pop eax
ror eax, 7
xor ecx, eax
mov eax, esi
shr eax, 3
xor ecx, eax
mov esi, dword [ebp - 4]
add edx, ecx
add edx, dword [ebp - 0x40]
push ebx
pop ecx
mov eax, ebx
mov dword [ebp - 0x40], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push ebx
pop eax
ror eax, 6
mov ebx, dword [ebp - 0x20]
xor ecx, eax
mov eax, edi
xor eax, ebx
and eax, dword [ebp - 0x10]
add ecx, edx
mov edx, dword [ebp - 8]
xor eax, edi
add eax, ecx
add edx, 0xd192e819
add edx, eax
mov eax, dword [ebp - 0x2c]
push eax
pop ecx
rol eax, 0xa
add esi, edx
mov dword [ebp - 4], esi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x2c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0xc]
mov edi, eax
and eax, dword [ebp - 0x2c]
or edi, dword [ebp - 0x2c]
add ecx, edx
and edi, dword [ebp - 0x28]
or edi, eax
mov dword [ebp - 8], edi
add dword [ebp - 8], ecx
mov ecx, dword [ebp - 0x3c]
mov edi, dword [ebp - 0x6c]
push ecx
pop edx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x5c]
push edi
pop ecx
rol ecx, 0xe
mov eax, edi
ror eax, 7
xor ecx, eax
mov eax, edi
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x44]
push esi
pop ecx
mov eax, esi
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x44], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
mov esi, dword [ebp - 0x10]
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x24]
mov eax, ebx
xor eax, esi
and eax, dword [ebp - 4]
add edx, 0xd6990624
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 8]
push eax
pop ecx
add edi, edx
rol eax, 0xa
mov dword [ebp - 0x28], edi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 8]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x2c]
mov ebx, eax
or ebx, dword [ebp - 8]
and eax, dword [ebp - 8]
and ebx, dword [ebp - 0xc]
add ecx, edx
or ebx, eax
mov dword [ebp - 0x18], ebx
add dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x40]
mov edx, ecx
rol edx, 0xf
mov ebx, dword [ebp - 0x70]
mov eax, ecx
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x60]
mov ecx, ebx
rol ecx, 0xe
push ebx
pop eax
ror eax, 7
xor ecx, eax
push ebx
pop eax
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x6c]
mov ecx, edi
push edi
pop eax
mov dword [ebp - 0x6c], edx
mov ebx, dword [ebp - 0xc]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, edi
ror eax, 6
mov edi, dword [ebp - 4]
xor ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x20]
mov eax, edi
xor eax, esi
and eax, dword [ebp - 0x28]
add edx, 0xf40e3585
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x18]
mov ecx, eax
add ebx, edx
rol eax, 0xa
mov dword [ebp - 0xc], ebx
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x18]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 8]
push eax
pop esi
and eax, dword [ebp - 0x18]
or esi, dword [ebp - 0x18]
add ecx, edx
and esi, dword [ebp - 0x2c]
or esi, eax
mov dword [ebp - 0x14], esi
add dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x74]
push ecx
pop edx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x64]
push esi
pop ecx
rol ecx, 0xe
mov eax, esi
ror eax, 7
xor ecx, eax
push esi
pop eax
shr eax, 3
xor ecx, eax
add edx, ecx
add edx, dword [ebp - 0x70]
push ebx
pop ecx
mov dword [ebp - 0x38], edx
ror ecx, 0xb
push ebx
pop eax
mov esi, dword [ebp - 0x2c]
rol eax, 7
xor ecx, eax
push ebx
pop eax
ror eax, 6
xor ecx, eax
mov ebx, dword [ebp - 0x28]
add ecx, edx
mov edx, dword [ebp - 0x10]
mov eax, edi
xor eax, ebx
and eax, dword [ebp - 0xc]
add edx, 0x106aa070
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x14]
mov ecx, eax
add esi, edx
rol eax, 0xa
mov dword [ebp - 0x2c], esi
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x14]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x18]
push eax
pop edi
and eax, dword [ebp - 0x14]
or edi, dword [ebp - 0x14]
add ecx, edx
and edi, dword [ebp - 8]
or edi, eax
mov dword [ebp - 0x1c], edi
add dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x6c]
mov edi, dword [ebp - 0x48]
mov edx, ecx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x34]
mov ecx, edi
rol ecx, 0xe
push edi
pop eax
ror eax, 7
xor ecx, eax
mov eax, edi
shr eax, 3
xor ecx, eax
mov edi, dword [ebp - 8]
add edx, ecx
add edx, dword [ebp - 0x74]
push esi
pop ecx
mov eax, esi
mov dword [ebp - 0x74], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebx
xor eax, dword [ebp - 0xc]
add ecx, edx
mov edx, dword [ebp - 4]
and eax, esi
mov esi, dword [ebp - 0x1c]
xor eax, ebx
add eax, ecx
add edx, 0x19a4c116
add edx, eax
add edi, edx
mov dword [ebp - 8], edi
push esi
pop ecx
ror ecx, 0xd
mov eax, esi
rol eax, 0xa
xor ecx, eax
push esi
pop eax
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x14]
push eax
pop ebx
and eax, esi
add ecx, edx
or ebx, esi
and ebx, dword [ebp - 0x18]
mov esi, ebx
or esi, eax
mov ebx, dword [ebp - 0x4c]
add esi, ecx
mov ecx, dword [ebp - 0x38]
mov edx, ecx
rol edx, 0xf
mov eax, ecx
mov dword [ebp - 0x20], esi
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x68]
push ebx
pop esi
rol esi, 0xe
mov eax, ebx
mov ecx, edi
ror eax, 7
xor esi, eax
push ebx
pop eax
ror ecx, 0xb
shr eax, 3
xor esi, eax
push edi
pop eax
add esi, edx
add esi, dword [ebp - 0x48]
mov edx, dword [ebp - 0x28]
rol eax, 7
xor ecx, eax
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0xc]
xor eax, dword [ebp - 0x2c]
add ecx, esi
and eax, edi
xor eax, dword [ebp - 0xc]
mov edi, dword [ebp - 0x20]
add eax, ecx
mov ebx, dword [ebp - 0x18]
add edx, 0x1e376c08
add edx, eax
mov ecx, edi
push edi
pop eax
add ebx, edx
rol eax, 0xa
mov dword [ebp - 0x18], ebx
ror ecx, 0xd
xor ecx, eax
push edi
pop eax
ror eax, 2
xor ecx, eax
push edi
pop eax
or eax, dword [ebp - 0x1c]
add ecx, edx
and eax, dword [ebp - 0x14]
mov dword [ebp - 0x24], eax
push edi
pop eax
and eax, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x24]
or edi, eax
add edi, ecx
mov ecx, dword [ebp - 0x74]
mov edx, ecx
rol edx, 0xf
mov dword [ebp - 0x24], edi
mov edi, dword [ebp - 0x50]
push ecx
pop eax
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x3c]
push edi
pop ecx
rol ecx, 0xe
mov eax, edi
shr edi, 3
ror eax, 7
xor ecx, eax
xor edi, ecx
push ebx
pop ecx
push ebx
pop eax
add edi, edx
add edi, dword [ebp - 0x4c]
rol eax, 7
mov edx, dword [ebp - 0xc]
add edx, 0x2748774c
ror ecx, 0xb
xor ecx, eax
push ebx
pop eax
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x2c]
xor eax, dword [ebp - 8]
add ecx, edi
and eax, ebx
xor eax, dword [ebp - 0x2c]
mov ebx, dword [ebp - 0x24]
add eax, ecx
add edx, eax
add dword [ebp - 0x14], edx
mov ecx, ebx
mov eax, ebx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
push ebx
pop eax
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x20]
or eax, ebx
and eax, dword [ebp - 0x1c]
add ecx, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x20]
and eax, ebx
mov ebx, dword [ebp - 4]
or ebx, eax
add ebx, ecx
push esi
pop edx
mov eax, esi
mov dword [ebp - 4], ebx
rol eax, 0xd
mov ebx, dword [ebp - 0x54]
push ebx
pop ecx
rol edx, 0xf
xor edx, eax
push esi
pop eax
rol ecx, 0xe
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x40]
push ebx
pop eax
shr ebx, 3
ror eax, 7
xor ecx, eax
xor ebx, ecx
add ebx, edx
mov edx, dword [ebp - 0x14]
add ebx, dword [ebp - 0x50]
mov ecx, edx
ror ecx, 0xb
push edx
pop eax
mov dword [ebp - 0x7c], ebx
rol eax, 7
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 8]
xor eax, dword [ebp - 0x18]
add ecx, ebx
and eax, edx
xor eax, dword [ebp - 8]
mov edx, dword [ebp - 0x2c]
add eax, ecx
add edx, 0x34b0bcb5
add edx, eax
mov eax, dword [ebp - 4]
mov ecx, eax
add dword [ebp - 0x1c], edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 4]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x24]
mov ebx, eax
and eax, dword [ebp - 4]
or ebx, dword [ebp - 4]
add ecx, edx
and ebx, dword [ebp - 0x20]
push edi
pop edx
or ebx, eax
push edi
pop eax
rol eax, 0xd
mov dword [ebp - 0x28], ebx
add dword [ebp - 0x28], ecx
rol edx, 0xf
mov ebx, dword [ebp - 0x58]
xor edx, eax
mov eax, edi
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x44]
push ebx
pop ecx
push ebx
pop eax
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, ebx
shr eax, 3
xor ecx, eax
mov eax, dword [ebp - 0x1c]
add edx, ecx
add edx, dword [ebp - 0x54]
mov ecx, eax
mov dword [ebp - 0x78], edx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, dword [ebp - 0x1c]
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x14]
add ecx, edx
and eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 8]
xor eax, dword [ebp - 0x18]
add edx, 0x391c0cb3
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x28]
add dword [ebp - 0x20], edx
mov ecx, eax
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 4]
or eax, dword [ebp - 0x28]
and eax, dword [ebp - 0x24]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
and eax, dword [ebp - 0x28]
mov ebx, dword [ebp - 8]
or ebx, eax
add ecx, edx
add ebx, ecx
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 0x7c]
push ebx
pop edx
rol edx, 0xf
mov eax, ebx
rol eax, 0xd
xor edx, eax
push ebx
pop eax
mov ebx, dword [ebp - 0x5c]
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x6c]
push ebx
pop ecx
mov eax, ebx
shr ebx, 3
ror eax, 7
rol ecx, 0xe
xor ecx, eax
xor ebx, ecx
add ebx, edx
mov edx, dword [ebp - 0x20]
add ebx, dword [ebp - 0x58]
mov ecx, edx
ror ecx, 0xb
mov eax, edx
mov dword [ebp - 0x70], ebx
rol eax, 7
xor ecx, eax
push edx
pop eax
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x14]
xor eax, dword [ebp - 0x1c]
add ecx, ebx
and eax, edx
xor eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x18]
add eax, ecx
add edx, 0x4ed8aa4a
add edx, eax
mov eax, dword [ebp - 8]
push eax
pop ecx
add dword [ebp - 0x24], edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 8]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x28]
push eax
pop ebx
and eax, dword [ebp - 8]
or ebx, dword [ebp - 8]
add ecx, edx
and ebx, dword [ebp - 4]
or ebx, eax
mov dword [ebp - 0x10], ebx
add dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x78]
mov ebx, dword [ebp - 0x60]
push ecx
pop edx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
mov ecx, ebx
push ebx
pop eax
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, ebx
shr eax, 3
xor ecx, eax
add edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x24]
add edx, ecx
push eax
pop ecx
rol eax, 7
add edx, dword [ebp - 0x5c]
mov ebx, dword [ebp - 0x70]
ror ecx, 0xb
xor ecx, eax
mov eax, dword [ebp - 0x24]
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x1c]
add ecx, edx
and eax, dword [ebp - 0x24]
mov dword [ebp - 0x5c], edx
xor eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14]
add eax, ecx
add edx, 0x5b9cca4f
add edx, eax
mov eax, dword [ebp - 0x10]
push eax
pop ecx
add dword [ebp - 4], edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 8]
or eax, dword [ebp - 0x10]
add ecx, edx
and eax, dword [ebp - 0x28]
push ebx
pop edx
rol edx, 0xf
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 8]
and eax, dword [ebp - 0x10]
or dword [ebp - 0xc], eax
add dword [ebp - 0xc], ecx
mov eax, ebx
rol eax, 0xd
xor edx, eax
mov eax, ebx
mov ebx, dword [ebp - 0x64]
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x74]
push ebx
pop ecx
mov eax, ebx
shr ebx, 3
ror eax, 7
rol ecx, 0xe
xor ecx, eax
xor ebx, ecx
add ebx, edx
mov edx, dword [ebp - 4]
add ebx, dword [ebp - 0x60]
mov ecx, edx
ror ecx, 0xb
push edx
pop eax
mov dword [ebp - 0x60], ebx
rol eax, 7
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
add ecx, ebx
and eax, edx
xor eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
add eax, ecx
add edx, 0x682e6ff3
add edx, eax
add dword [ebp - 0x28], edx
mov eax, dword [ebp - 0xc]
push eax
pop ecx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [ebp - 0xc]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10]
or eax, dword [ebp - 0xc]
add ecx, edx
and eax, dword [ebp - 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
and eax, dword [ebp - 0xc]
or dword [ebp - 0x14], eax
add dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x5c]
push ecx
pop edx
rol edx, 0xf
push ecx
pop eax
rol eax, 0xd
xor edx, eax
mov eax, ecx
shr eax, 0xa
xor edx, eax
mov eax, dword [ebp - 0x34]
mov ecx, eax
ror eax, 7
add esi, edx
mov edx, dword [ebp - 0x28]
rol ecx, 0xe
xor ecx, eax
mov eax, dword [ebp - 0x34]
shr eax, 3
xor ecx, eax
add esi, ecx
add esi, dword [ebp - 0x64]
push edx
pop ecx
mov eax, edx
mov dword [ebp - 0x64], esi
rol eax, 7
ror ecx, 0xb
xor ecx, eax
push edx
pop eax
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x24]
xor eax, dword [ebp - 4]
add ecx, esi
mov esi, dword [ebp - 0x14]
and eax, edx
xor eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
add eax, ecx
add edx, 0x748f82ee
add edx, eax
add dword [ebp - 8], edx
push esi
pop ecx
mov eax, esi
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
push esi
pop eax
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0xc]
push eax
pop esi
or esi, dword [ebp - 0x14]
and eax, dword [ebp - 0x14]
and esi, dword [ebp - 0x10]
add ecx, edx
or esi, eax
push ebx
pop edx
mov eax, ebx
rol eax, 0xd
add esi, ecx
mov dword [ebp - 0x20], esi
rol edx, 0xf
xor edx, eax
mov eax, ebx
shr eax, 0xa
xor edx, eax
mov ebx, dword [ebp - 0x68]
push ebx
pop esi
rol esi, 0xe
push ebx
pop eax
add edx, edi
ror eax, 7
xor esi, eax
mov edi, dword [ebp - 0x20]
push ebx
pop eax
mov ebx, dword [ebp - 8]
shr eax, 3
xor esi, eax
mov ecx, ebx
mov eax, ebx
add esi, edx
add esi, dword [ebp - 0x34]
rol eax, 7
mov edx, dword [ebp - 0x24]
add edx, 0x78a5636f
ror ecx, 0xb
xor ecx, eax
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 4]
xor eax, dword [ebp - 0x28]
add ecx, esi
and eax, ebx
xor eax, dword [ebp - 4]
push edi
pop ebx
add eax, ecx
add edx, eax
or ebx, dword [ebp - 0x14]
add dword [ebp - 0x10], edx
and ebx, dword [ebp - 0xc]
mov ecx, edi
mov eax, edi
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, edi
ror eax, 2
xor ecx, eax
add ecx, edx
push edi
pop eax
and eax, dword [ebp - 0x14]
mov edi, dword [ebp - 0x3c]
or ebx, eax
add ebx, ecx
mov ecx, dword [ebp - 0x64]
push ecx
pop edx
mov eax, ecx
rol eax, 0xd
mov dword [ebp - 0x2c], ebx
rol edx, 0xf
xor edx, eax
push ecx
pop eax
shr eax, 0xa
xor edx, eax
add edx, dword [ebp - 0x7c]
mov ecx, edi
rol ecx, 0xe
mov eax, edi
shr edi, 3
ror eax, 7
xor ecx, eax
xor edi, ecx
add edi, edx
mov edx, dword [ebp - 0x10]
add edi, dword [ebp - 0x68]
mov ecx, edx
ror ecx, 0xb
push edx
pop eax
rol eax, 7
xor ecx, eax
push edx
pop eax
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x28]
xor eax, dword [ebp - 8]
and eax, edx
xor eax, dword [ebp - 0x28]
mov edx, dword [ebp - 4]
add ecx, edi
add eax, ecx
add edx, 0x84c87814
add edx, eax
add dword [ebp - 0xc], edx
push ebx
pop ecx
ror ecx, 0xd
push ebx
pop eax
rol eax, 0xa
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x20]
push eax
pop ebx
and eax, dword [ebp - 0x2c]
or ebx, dword [ebp - 0x2c]
add ecx, edx
and ebx, dword [ebp - 0x14]
or ebx, eax
add ebx, ecx
mov ecx, dword [ebp - 0x40]
mov edx, ecx
mov eax, ecx
mov dword [ebp - 0x24], ebx
ror eax, 7
rol edx, 0xe
xor edx, eax
push ecx
pop eax
shr eax, 3
xor edx, eax
add edx, dword [ebp - 0x78]
mov ecx, esi
rol ecx, 0xf
push esi
pop eax
shr esi, 0xa
rol eax, 0xd
xor ecx, eax
xor esi, ecx
add esi, edx
mov edx, dword [ebp - 0xc]
add esi, dword [ebp - 0x3c]
mov ecx, edx
ror ecx, 0xb
push edx
pop eax
rol eax, 7
xor ecx, eax
push edx
pop eax
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 8]
xor eax, dword [ebp - 0x10]
add ecx, esi
and eax, edx
xor eax, dword [ebp - 8]
mov edx, dword [ebp - 0x28]
add eax, ecx
mov ecx, ebx
add edx, 0x8cc70208
ror ecx, 0xd
add edx, eax
add dword [ebp - 0x14], edx
mov eax, ebx
rol eax, 0xa
xor ecx, eax
push ebx
pop eax
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x2c]
push eax
pop ebx
or ebx, dword [ebp - 0x24]
and eax, dword [ebp - 0x24]
and ebx, dword [ebp - 0x20]
add ecx, edx
or ebx, eax
add ebx, ecx
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x28], ebx
push ecx
pop edx
rol edx, 0xe
mov eax, ecx
ror eax, 7
xor edx, eax
push ecx
pop eax
shr eax, 3
xor edx, eax
add edx, dword [ebp - 0x70]
push edi
pop ecx
rol ecx, 0xf
mov eax, edi
shr edi, 0xa
rol eax, 0xd
xor ecx, eax
xor edi, ecx
add edi, edx
mov edx, dword [ebp - 0x14]
add edi, dword [ebp - 0x40]
mov ecx, edx
ror ecx, 0xb
mov eax, edx
rol eax, 7
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x10]
xor eax, dword [ebp - 0xc]
add ecx, edi
and eax, edx
xor eax, dword [ebp - 0x10]
mov edx, dword [ebp - 8]
add eax, ecx
add edx, 0x90befffa
add edx, eax
add dword [ebp - 0x20], edx
mov ecx, ebx
mov eax, ebx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
push ebx
pop eax
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x24]
push eax
pop ebx
and eax, dword [ebp - 0x28]
or ebx, dword [ebp - 0x28]
add ecx, edx
and ebx, dword [ebp - 0x2c]
or ebx, eax
add ebx, ecx
mov ecx, dword [ebp - 0x6c]
mov edx, ecx
push ecx
pop eax
mov dword [ebp - 0x34], ebx
ror eax, 7
rol edx, 0xe
xor edx, eax
mov eax, ecx
shr eax, 3
xor edx, eax
add edx, dword [ebp - 0x5c]
mov ecx, esi
rol ecx, 0xf
mov eax, esi
shr esi, 0xa
rol eax, 0xd
xor ecx, eax
xor esi, ecx
add esi, edx
mov edx, dword [ebp - 0x20]
add esi, dword [ebp - 0x44]
mov ecx, edx
ror ecx, 0xb
mov eax, edx
rol eax, 7
xor ecx, eax
push edx
pop eax
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0xc]
xor eax, dword [ebp - 0x14]
add ecx, esi
and eax, edx
xor eax, dword [ebp - 0xc]
mov edx, dword [ebp - 0x10]
add eax, ecx
add edx, 0xa4506ceb
add edx, eax
add dword [ebp - 0x2c], edx
mov ecx, ebx
ror ecx, 0xd
push ebx
pop eax
rol eax, 0xa
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x28]
push eax
pop ebx
and eax, dword [ebp - 0x34]
or ebx, dword [ebp - 0x34]
add ecx, edx
and ebx, dword [ebp - 0x24]
or ebx, eax
add ebx, ecx
mov ecx, dword [ebp - 0x2c]
push ecx
pop edx
mov eax, ecx
rol eax, 7
ror edx, 0xb
xor edx, eax
push ecx
pop eax
ror eax, 6
xor edx, eax
mov eax, dword [ebp - 0x38]
push eax
pop ecx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, dword [ebp - 0x38]
shr eax, 3
xor ecx, eax
add edx, ecx
mov ecx, edi
rol ecx, 0xf
mov eax, edi
shr edi, 0xa
rol eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x14]
xor ecx, edi
and eax, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x60]
xor eax, dword [ebp - 0x14]
add ecx, edx
mov edx, dword [ebp - 0xc]
add eax, ecx
add eax, dword [ebp - 0x6c]
add edx, 0xbef9a3f7
add edx, eax
add dword [ebp - 0x24], edx
push ebx
pop ecx
ror ecx, 0xd
mov eax, ebx
rol eax, 0xa
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x34]
push eax
pop edi
or edi, ebx
and edi, dword [ebp - 0x28]
and eax, ebx
add ecx, edx
or edi, eax
add edi, ecx
mov ecx, dword [ebp - 0x24]
mov edx, ecx
ror edx, 0xb
mov eax, ecx
rol eax, 7
xor edx, eax
push ecx
pop eax
ror eax, 6
xor edx, eax
mov eax, dword [ebp - 0x74]
mov ecx, eax
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, dword [ebp - 0x74]
shr eax, 3
xor ecx, eax
add edx, ecx
push esi
pop ecx
rol ecx, 0xf
push esi
pop eax
shr esi, 0xa
rol eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x2c]
xor ecx, esi
and eax, dword [ebp - 0x24]
add ecx, dword [ebp - 0x64]
xor eax, dword [ebp - 0x20]
mov esi, dword [ebp - 0x14]
add ecx, edx
add eax, ecx
add eax, dword [ebp - 0x38]
add esi, 0xc67178f2
add esi, eax
push edi
pop edx
ror edx, 0xd
mov eax, edi
mov ecx, ebx
rol eax, 0xa
xor edx, eax
push edi
pop eax
ror eax, 2
xor edx, eax
or ecx, edi
and ecx, dword [ebp - 0x34]
mov eax, ebx
and eax, edi
or ecx, eax
mov eax, dword [ebp - 0x30]
add edx, dword [eax + 8]
add ecx, edx
mov edx, eax
mov eax, dword [ebp - 0x34]
add dword [edx + 0x14], eax
mov eax, dword [edx + 0x18]
add dword [edx + 0xc], edi
add dword [edx + 0x10], ebx
add eax, esi
add eax, dword [ebp - 0x28]
add ecx, esi
mov dword [edx + 0x18], eax
mov eax, dword [ebp - 0x24]
add dword [edx + 0x1c], eax
mov eax, dword [ebp - 0x2c]
add dword [edx + 0x20], eax
mov eax, dword [ebp - 0x20]
add dword [edx + 0x24], eax
pop edi
pop esi
mov dword [edx + 8], ecx
pop ebx
push ebp
pop esp
pop ebp
ret