Function at 0x51ef50
Capabilities:
Encode data using xor
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x134
mov eax, dword [0x5ac020]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
xor esi, esi
mov dword [ebp - 0x130], ecx
add edx, 2
mov dword [ebp - 0x124], ecx
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x12c], ecx
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x110], ecx
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x114], ecx
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x108], ecx
mov ecx, dword [eax + 0x1c]
mov dword [ebp - 0x10c], ecx
mov ecx, dword [eax + 0x20]
mov dword [ebp - 0x134], eax
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x120], ecx
mov dword [ebp - 0x11c], eax
movzx ecx, byte [edx - 2]
lea edx, [edx + 4]
movzx eax, byte [edx - 5]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx - 4]
shl ecx, 8
or ecx, eax
movzx eax, byte [edx - 3]
shl ecx, 8
or ecx, eax
mov dword [ebp + esi*4 - 0x104], ecx
inc esi
cmp esi, 0x10
jl 0x51efc5
lea eax, [ebp - 0xcc]
mov ebx, 0x30
nop
mov edx, dword [eax - 0x34]
lea eax, [eax + 4]
mov esi, dword [eax - 4]
mov edi, edx
mov ecx, edx
ror edi, 0x12
ror ecx, 7
xor edi, ecx
shr edx, 3
xor edi, edx
mov ecx, esi
mov edx, esi
ror ecx, 0x11
ror edx, 0x13
xor edx, ecx
shr esi, 0xa
xor edx, esi
add edi, edx
add edi, dword [eax - 0x3c]
add edi, dword [eax - 0x18]
mov dword [eax + 4], edi
dec ebx
jne 0x51f000
mov edx, dword [ebp - 0x108]
mov ecx, edx
ror ecx, 0x19
mov eax, edx
ror eax, 0xb
xor ecx, eax
mov ebx, dword [ebp - 0x124]
mov eax, edx
mov edi, dword [ebp - 0x110]
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x10c]
xor eax, dword [ebp - 0x120]
add ecx, dword [ebp - 0x104]
and eax, edx
xor eax, dword [ebp - 0x120]
add eax, ecx
mov edx, dword [ebp - 0x11c]
add edx, 0x428a2f98
mov ecx, ebx
add edx, eax
ror ecx, 0x16
add dword [ebp - 0x114], edx
mov eax, ebx
ror eax, 0xd
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x12c]
mov esi, eax
add ecx, edx
mov edx, dword [ebp - 0x114]
and eax, ebx
or esi, ebx
and esi, edi
or esi, eax
mov eax, edx
add esi, ecx
ror eax, 0xb
mov ecx, edx
ror ecx, 0x19
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x10c]
xor eax, dword [ebp - 0x108]
add ecx, dword [ebp - 0x100]
and eax, edx
xor eax, dword [ebp - 0x10c]
mov edx, dword [ebp - 0x120]
add eax, ecx
add edx, 0x71374491
mov ecx, esi
add edx, eax
ror ecx, 0x16
add edi, edx
mov eax, esi
ror eax, 0xd
xor ecx, eax
mov dword [ebp - 0x110], edi
mov eax, esi
mov edi, ebx
ror eax, 2
or edi, esi
and edi, dword [ebp - 0x12c]
xor ecx, eax
add ecx, edx
mov eax, ebx
mov edx, dword [ebp - 0x110]
and eax, esi
or edi, eax
mov eax, edx
add edi, ecx
ror eax, 0xb
mov ecx, edx
ror ecx, 0x19
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov ebx, esi
add ecx, dword [ebp - 0xfc]
or ebx, edi
mov eax, dword [ebp - 0x114]
xor eax, dword [ebp - 0x108]
and eax, edx
and ebx, dword [ebp - 0x124]
xor eax, dword [ebp - 0x108]
add eax, ecx
mov edx, dword [ebp - 0x10c]
add edx, 0xb5c0fbcf
mov ecx, edi
add edx, eax
ror ecx, 0x16
add dword [ebp - 0x12c], edx
mov eax, edi
ror eax, 0xd
xor ecx, eax
mov eax, edi
ror eax, 2
xor ecx, eax
mov eax, esi
and eax, edi
add ecx, edx
mov edx, dword [ebp - 0x12c]
or ebx, eax
add ebx, ecx
mov eax, edx
ror eax, 0xb
mov ecx, edx
ror ecx, 0x19
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x110]
xor eax, dword [ebp - 0x114]
add ecx, dword [ebp - 0xf8]
and eax, edx
xor eax, dword [ebp - 0x114]
mov edx, dword [ebp - 0x108]
add eax, ecx
add edx, 0xe9b5dba5
mov ecx, ebx
add edx, eax
ror ecx, 0x16
add dword [ebp - 0x124], edx
mov eax, ebx
ror eax, 0xd
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, ebx
or eax, edi
add ecx, edx
mov edx, dword [ebp - 0x124]
and eax, esi
mov dword [ebp - 0x128], eax
mov eax, ebx
and eax, edi
or dword [ebp - 0x128], eax
mov eax, edx
add dword [ebp - 0x128], ecx
mov ecx, edx
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x110]
xor eax, dword [ebp - 0x12c]
add ecx, dword [ebp - 0xf4]
and eax, edx
xor eax, dword [ebp - 0x110]
mov edx, dword [ebp - 0x114]
add eax, ecx
add edx, 0x3956c25b
add edx, eax
mov eax, dword [ebp - 0x128]
add esi, edx
mov ecx, eax
mov dword [ebp - 0x10c], esi
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, dword [ebp - 0x128]
ror eax, 2
xor ecx, eax
mov eax, ebx
or eax, dword [ebp - 0x128]
add ecx, edx
and eax, edi
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0x118], eax
add edx, 0x59f111f1
mov eax, ebx
and eax, dword [ebp - 0x128]
or dword [ebp - 0x118], eax
mov eax, esi
add dword [ebp - 0x118], ecx
mov ecx, esi
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x12c]
xor eax, dword [ebp - 0x124]
add ecx, dword [ebp - 0xf0]
and eax, esi
xor eax, dword [ebp - 0x12c]
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x118]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, dword [ebp - 0x118]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x118]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x128]
or esi, dword [ebp - 0x128]
mov edx, dword [ebp - 0x12c]
and esi, ebx
or esi, eax
add edx, 0x923f82a4
mov dword [ebp - 0x114], esi
mov eax, edi
add dword [ebp - 0x114], ecx
mov ecx, edi
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x124]
xor eax, dword [ebp - 0x10c]
add ecx, dword [ebp - 0xec]
and eax, edi
xor eax, dword [ebp - 0x124]
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x114]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, dword [ebp - 0x114]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x118]
or esi, dword [ebp - 0x118]
and esi, dword [ebp - 0x128]
or esi, eax
mov edx, dword [ebp - 0x124]
mov dword [ebp - 0x120], esi
mov eax, ebx
add dword [ebp - 0x120], ecx
add edx, 0xab1c5ed5
ror eax, 0xb
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x10c]
add ecx, dword [ebp - 0xe8]
xor eax, edi
and eax, ebx
xor eax, dword [ebp - 0x10c]
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x120]
mov ecx, eax
add dword [ebp - 0x128], edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, dword [ebp - 0x120]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x120]
or esi, dword [ebp - 0x120]
and esi, dword [ebp - 0x118]
mov edx, dword [ebp - 0x128]
or esi, eax
mov dword [ebp - 0x108], esi
mov eax, edx
add dword [ebp - 0x108], ecx
mov ecx, edx
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0xe4]
xor eax, edi
and eax, edx
mov edx, dword [ebp - 0x10c]
xor eax, edi
add edx, 0xd807aa98
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x108]
add dword [ebp - 0x118], edx
mov ecx, eax
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, dword [ebp - 0x108]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x120]
mov esi, eax
add ecx, edx
or esi, dword [ebp - 0x108]
and esi, dword [ebp - 0x114]
and eax, dword [ebp - 0x108]
or esi, eax
mov dword [ebp - 0x10c], esi
add dword [ebp - 0x10c], ecx
mov esi, dword [ebp - 0x118]
mov ecx, esi
ror ecx, 0x19
lea edx, [edi + 0x12835b01]
mov eax, esi
mov edi, dword [ebp - 0x114]
ror eax, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebx
xor eax, dword [ebp - 0x128]
add ecx, dword [ebp - 0xe0]
and eax, esi
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x10c]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x114], edi
mov eax, dword [ebp - 0x10c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x108]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x10c]
lea edx, [ebx + 0x243185be]
or esi, dword [ebp - 0x10c]
and esi, dword [ebp - 0x120]
or esi, eax
mov ebx, dword [ebp - 0x120]
mov dword [ebp - 0x11c], esi
mov eax, edi
add dword [ebp - 0x11c], ecx
mov ecx, edi
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, edi
mov edi, dword [ebp - 0x118]
ror eax, 6
xor ecx, eax
mov eax, edi
xor eax, dword [ebp - 0x128]
and eax, dword [ebp - 0x114]
xor eax, dword [ebp - 0x128]
add ecx, dword [ebp - 0xdc]
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x11c]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x120], ebx
mov eax, dword [ebp - 0x11c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10c]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or esi, dword [ebp - 0x11c]
and esi, dword [ebp - 0x108]
or esi, eax
mov eax, ebx
mov dword [ebp - 0x124], esi
add dword [ebp - 0x124], ecx
mov ecx, ebx
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, ebx
mov ebx, dword [ebp - 0x114]
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 0xd8]
mov eax, ebx
xor eax, edi
mov edx, dword [ebp - 0x128]
and eax, dword [ebp - 0x120]
add edx, 0x550c7dc3
xor eax, edi
mov esi, dword [ebp - 0x108]
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x124]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x108], esi
mov eax, dword [ebp - 0x124]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or edi, dword [ebp - 0x11c]
and edi, dword [ebp - 0x10c]
or edi, eax
mov edx, dword [ebp - 0x118]
mov dword [ebp - 0x128], edi
mov eax, esi
add dword [ebp - 0x128], ecx
add edx, 0x72be5d74
ror eax, 0xb
mov ecx, esi
ror ecx, 0x19
xor ecx, eax
mov edi, dword [ebp - 0x10c]
mov eax, esi
mov esi, dword [ebp - 0x120]
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0xd4]
xor eax, esi
and eax, dword [ebp - 0x108]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x128]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x10c], edi
mov eax, dword [ebp - 0x128]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x128]
or ebx, dword [ebp - 0x128]
and ebx, dword [ebp - 0x11c]
or ebx, eax
mov eax, edi
ror eax, 0xb
mov dword [ebp - 0x110], ebx
add dword [ebp - 0x110], ecx
mov ecx, edi
ror ecx, 0x19
xor ecx, eax
mov eax, edi
mov edi, dword [ebp - 0x108]
ror eax, 6
xor ecx, eax
mov eax, esi
xor eax, edi
and eax, dword [ebp - 0x10c]
xor eax, esi
add ecx, dword [ebp - 0xd0]
add eax, ecx
mov edx, dword [ebp - 0x114]
mov ebx, dword [ebp - 0x11c]
add edx, 0x80deb1fe
add edx, eax
mov eax, dword [ebp - 0x110]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x11c], ebx
mov eax, dword [ebp - 0x110]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x110]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x128]
or esi, dword [ebp - 0x128]
and esi, dword [ebp - 0x124]
or esi, eax
mov edx, dword [ebp - 0x120]
mov dword [ebp - 0x114], esi
mov eax, ebx
add dword [ebp - 0x114], ecx
add edx, 0x9bdc06a7
ror eax, 0xb
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov esi, dword [ebp - 0x124]
mov eax, ebx
mov ebx, dword [ebp - 0x10c]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0xcc]
xor eax, ebx
and eax, dword [ebp - 0x11c]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x114]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x124], esi
mov eax, dword [ebp - 0x114]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x110]
or edi, dword [ebp - 0x110]
and edi, dword [ebp - 0x128]
mov edx, dword [ebp - 0x108]
or edi, eax
mov dword [ebp - 0x120], edi
mov eax, esi
add dword [ebp - 0x120], ecx
add edx, 0xc19bf174
mov edi, dword [ebp - 0x128]
mov ecx, esi
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, esi
mov esi, dword [ebp - 0x11c]
ror eax, 6
xor ecx, eax
mov eax, ebx
ret
add ecx, dword [ebp - 0xc8]
xor eax, esi
and eax, dword [ebp - 0x124]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x120]
add edi, edx
mov ecx, eax
mov dword [ebp - 0x128], edi
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, dword [ebp - 0x120]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x120]
or ebx, dword [ebp - 0x120]
and ebx, dword [ebp - 0x110]
or ebx, eax
mov edx, dword [ebp - 0x10c]
mov dword [ebp - 0x108], ebx
mov eax, edi
add dword [ebp - 0x108], ecx
add edx, 0xe49b69c1
ror eax, 0xb
mov ecx, edi
ror ecx, 0x19
xor ecx, eax
mov ebx, dword [ebp - 0x110]
mov eax, edi
mov edi, dword [ebp - 0x124]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0xc4]
xor eax, esi
and eax, dword [ebp - 0x128]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x108]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x110], ebx
mov eax, dword [ebp - 0x108]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x120]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x108]
or esi, dword [ebp - 0x108]
and esi, dword [ebp - 0x114]
or esi, eax
mov edx, dword [ebp - 0x11c]
mov dword [ebp - 0x10c], esi
mov eax, ebx
add dword [ebp - 0x10c], ecx
add edx, 0xefbe4786
mov esi, dword [ebp - 0x114]
mov ecx, ebx
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, ebx
mov ebx, dword [ebp - 0x128]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0xc0]
xor eax, ebx
and eax, dword [ebp - 0x110]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x10c]
add esi, edx
mov ecx, eax
mov dword [ebp - 0x114], esi
ror ecx, 0x16
ror eax, 0xd
xor ecx, eax
mov eax, dword [ebp - 0x10c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x108]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x10c]
or edi, dword [ebp - 0x10c]
and edi, dword [ebp - 0x120]
or edi, eax
mov edx, dword [ebp - 0x124]
mov dword [ebp - 0x11c], edi
mov eax, esi
add dword [ebp - 0x11c], ecx
add edx, 0xfc19dc6
ror eax, 0xb
mov ecx, esi
ror ecx, 0x19
xor ecx, eax
mov edi, dword [ebp - 0x120]
mov eax, esi
mov esi, dword [ebp - 0x110]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0xbc]
xor eax, ebx
and eax, dword [ebp - 0x114]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x11c]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x120], edi
mov eax, dword [ebp - 0x11c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10c]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or ebx, dword [ebp - 0x11c]
and ebx, dword [ebp - 0x108]
or ebx, eax
mov edx, dword [ebp - 0x128]
mov dword [ebp - 0x124], ebx
mov eax, edi
add dword [ebp - 0x124], ecx
add edx, 0x240ca1cc
ror eax, 0xb
mov ecx, edi
mov ebx, dword [ebp - 0x108]
ror ecx, 0x19
xor ecx, eax
mov eax, edi
mov edi, dword [ebp - 0x114]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0xb8]
xor eax, esi
and eax, dword [ebp - 0x120]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x124]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x108], ebx
mov eax, dword [ebp - 0x124]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
add ecx, edx
mov esi, eax
mov edx, dword [ebp - 0x110]
and eax, dword [ebp - 0x11c]
add edx, 0x2de92c6f
or esi, dword [ebp - 0x11c]
and esi, dword [ebp - 0x10c]
or esi, eax
mov eax, ebx
ror eax, 0xb
mov dword [ebp - 0x118], esi
add dword [ebp - 0x118], ecx
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov esi, dword [ebp - 0x10c]
mov eax, ebx
mov ebx, dword [ebp - 0x120]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0xb4]
xor eax, ebx
and eax, dword [ebp - 0x108]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x118]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x10c], esi
mov eax, dword [ebp - 0x118]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x118]
or edi, dword [ebp - 0x118]
and edi, dword [ebp - 0x11c]
or edi, eax
mov edx, dword [ebp - 0x114]
mov dword [ebp - 0x110], edi
mov eax, esi
add dword [ebp - 0x110], ecx
add edx, 0x4a7484aa
ror eax, 0xb
mov ecx, esi
ror ecx, 0x19
xor ecx, eax
mov edi, dword [ebp - 0x11c]
mov eax, esi
mov esi, dword [ebp - 0x108]
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0xb0]
xor eax, esi
and eax, dword [ebp - 0x10c]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x110]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x11c], edi
mov eax, dword [ebp - 0x110]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x110]
mov ebx, eax
or ebx, dword [ebp - 0x118]
and ebx, dword [ebp - 0x124]
and eax, dword [ebp - 0x118]
or ebx, eax
add ecx, edx
mov edx, dword [ebp - 0x120]
mov eax, edi
ror eax, 0xb
add edx, 0x5cb0a9dc
mov dword [ebp - 0x114], ebx
add dword [ebp - 0x114], ecx
mov ecx, edi
ror ecx, 0x19
xor ecx, eax
mov ebx, dword [ebp - 0x124]
mov eax, edi
mov edi, dword [ebp - 0x10c]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0xac]
xor eax, edi
and eax, dword [ebp - 0x11c]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x114]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x124], ebx
mov eax, dword [ebp - 0x114]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x110]
or esi, dword [ebp - 0x110]
and esi, dword [ebp - 0x118]
or esi, eax
mov edx, dword [ebp - 0x108]
mov dword [ebp - 0x120], esi
mov eax, ebx
add dword [ebp - 0x120], ecx
add edx, 0x76f988da
ror eax, 0xb
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov esi, dword [ebp - 0x118]
mov eax, ebx
mov ebx, dword [ebp - 0x11c]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0xa8]
xor eax, ebx
and eax, dword [ebp - 0x124]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x120]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x118], esi
mov eax, dword [ebp - 0x120]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov edi, eax
add ecx, edx
or edi, dword [ebp - 0x120]
and edi, dword [ebp - 0x110]
and eax, dword [ebp - 0x120]
or edi, eax
mov dword [ebp - 0x108], edi
add dword [ebp - 0x108], ecx
mov ecx, esi
ror ecx, 0x19
mov eax, esi
ror eax, 0xb
xor ecx, eax
mov edx, dword [ebp - 0x10c]
mov eax, esi
mov edi, dword [ebp - 0x110]
mov esi, dword [ebp - 0x124]
add edx, 0x983e5152
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0xa4]
xor eax, ebx
and eax, dword [ebp - 0x118]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x108]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x110], edi
mov eax, dword [ebp - 0x108]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x120]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x108]
or ebx, dword [ebp - 0x108]
and ebx, dword [ebp - 0x114]
or ebx, eax
mov edx, dword [ebp - 0x11c]
mov dword [ebp - 0x10c], ebx
mov eax, edi
add dword [ebp - 0x10c], ecx
add edx, 0xa831c66d
ror eax, 0xb
mov ecx, edi
ror ecx, 0x19
xor ecx, eax
mov ebx, dword [ebp - 0x114]
mov eax, edi
mov edi, dword [ebp - 0x118]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0xa0]
xor eax, edi
and eax, dword [ebp - 0x110]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x10c]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x114], ebx
mov eax, dword [ebp - 0x10c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x108]
mov esi, eax
add ecx, edx
or esi, dword [ebp - 0x10c]
and eax, dword [ebp - 0x10c]
and esi, dword [ebp - 0x120]
or esi, eax
mov eax, ebx
mov dword [ebp - 0x11c], esi
add dword [ebp - 0x11c], ecx
mov ecx, ebx
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, ebx
mov ebx, dword [ebp - 0x110]
ror eax, 6
xor ecx, eax
mov edx, dword [ebp - 0x124]
add ecx, dword [ebp - 0x9c]
mov eax, ebx
xor eax, edi
mov esi, dword [ebp - 0x120]
and eax, dword [ebp - 0x114]
add edx, 0xb00327c8
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x11c]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x120], esi
mov eax, dword [ebp - 0x11c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10c]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or edi, dword [ebp - 0x11c]
and edi, dword [ebp - 0x108]
or edi, eax
mov edx, dword [ebp - 0x118]
mov dword [ebp - 0x124], edi
mov eax, esi
add dword [ebp - 0x124], ecx
add edx, 0xbf597fc7
ror eax, 0xb
mov ecx, esi
ror ecx, 0x19
xor ecx, eax
mov edi, dword [ebp - 0x108]
mov eax, esi
mov esi, dword [ebp - 0x114]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x98]
xor eax, ebx
and eax, dword [ebp - 0x120]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x124]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x108], edi
mov eax, dword [ebp - 0x124]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or ebx, dword [ebp - 0x11c]
and ebx, dword [ebp - 0x10c]
or ebx, eax
mov eax, edi
mov dword [ebp - 0x118], ebx
add dword [ebp - 0x118], ecx
mov ecx, edi
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, edi
mov edi, dword [ebp - 0x120]
ror eax, 6
xor ecx, eax
mov eax, esi
xor eax, edi
and eax, dword [ebp - 0x108]
add ecx, dword [ebp - 0x94]
xor eax, esi
add eax, ecx
mov edx, dword [ebp - 0x110]
mov ebx, dword [ebp - 0x10c]
add edx, 0xc6e00bf3
add edx, eax
mov eax, dword [ebp - 0x118]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x10c], ebx
mov eax, dword [ebp - 0x118]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x118]
or esi, dword [ebp - 0x118]
and esi, dword [ebp - 0x11c]
or esi, eax
mov edx, dword [ebp - 0x114]
mov dword [ebp - 0x110], esi
mov eax, ebx
add dword [ebp - 0x110], ecx
add edx, 0xd5a79147
ror eax, 0xb
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov esi, dword [ebp - 0x11c]
mov eax, ebx
mov ebx, dword [ebp - 0x108]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x90]
xor eax, ebx
and eax, dword [ebp - 0x10c]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x110]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x11c], esi
mov eax, dword [ebp - 0x110]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x110]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x118]
or edi, dword [ebp - 0x118]
and edi, dword [ebp - 0x124]
mov edx, dword [ebp - 0x120]
or edi, eax
mov dword [ebp - 0x114], edi
mov eax, esi
add dword [ebp - 0x114], ecx
mov ecx, esi
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, esi
mov esi, dword [ebp - 0x10c]
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x8c]
xor eax, esi
and eax, dword [ebp - 0x11c]
xor eax, ebx
add eax, ecx
mov edi, dword [ebp - 0x124]
add edx, 0x6ca6351
add edx, eax
mov eax, dword [ebp - 0x114]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x124], edi
mov eax, dword [ebp - 0x114]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x110]
or ebx, dword [ebp - 0x110]
and ebx, dword [ebp - 0x118]
or ebx, eax
mov edx, dword [ebp - 0x108]
mov dword [ebp - 0x120], ebx
mov eax, edi
add dword [ebp - 0x120], ecx
add edx, 0x14292967
ror eax, 0xb
mov ecx, edi
ror ecx, 0x19
xor ecx, eax
mov ebx, dword [ebp - 0x118]
mov eax, edi
mov edi, dword [ebp - 0x11c]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x88]
xor eax, edi
and eax, dword [ebp - 0x124]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x120]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x118], ebx
mov eax, dword [ebp - 0x120]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x120]
or esi, dword [ebp - 0x120]
and esi, dword [ebp - 0x110]
mov edx, dword [ebp - 0x10c]
or esi, eax
mov dword [ebp - 0x108], esi
mov eax, ebx
add dword [ebp - 0x108], ecx
add edx, 0x27b70a85
mov esi, dword [ebp - 0x110]
mov ecx, ebx
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, ebx
mov ebx, dword [ebp - 0x124]
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x84]
xor eax, edi
and eax, dword [ebp - 0x118]
xor eax, edi
add eax, ecx
add edx, eax
add esi, edx
mov dword [ebp - 0x110], esi
mov eax, dword [ebp - 0x108]
mov ecx, eax
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, dword [ebp - 0x108]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x120]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x108]
or edi, dword [ebp - 0x108]
and edi, dword [ebp - 0x114]
or edi, eax
mov edx, dword [ebp - 0x11c]
mov dword [ebp - 0x10c], edi
mov eax, esi
add dword [ebp - 0x10c], ecx
add edx, 0x2e1b2138
ror eax, 0xb
mov ecx, esi
ror ecx, 0x19
xor ecx, eax
mov edi, dword [ebp - 0x114]
mov eax, esi
mov esi, dword [ebp - 0x118]
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x80]
xor eax, esi
and eax, dword [ebp - 0x110]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x10c]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x114], edi
mov eax, dword [ebp - 0x10c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x108]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x10c]
or ebx, dword [ebp - 0x10c]
and ebx, dword [ebp - 0x120]
or ebx, eax
mov edx, dword [ebp - 0x124]
mov dword [ebp - 0x11c], ebx
mov eax, edi
add dword [ebp - 0x11c], ecx
add edx, 0x4d2c6dfc
mov ebx, dword [ebp - 0x120]
mov ecx, edi
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, edi
mov edi, dword [ebp - 0x110]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x7c]
xor eax, esi
and eax, dword [ebp - 0x114]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x11c]
mov ecx, eax
add ebx, edx
ror ecx, 0x16
ror eax, 0xd
mov dword [ebp - 0x120], ebx
xor ecx, eax
mov eax, dword [ebp - 0x11c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10c]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or esi, dword [ebp - 0x11c]
and esi, dword [ebp - 0x108]
or esi, eax
mov edx, dword [ebp - 0x118]
mov dword [ebp - 0x124], esi
mov eax, ebx
add dword [ebp - 0x124], ecx
add edx, 0x53380d13
ror eax, 0xb
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov esi, dword [ebp - 0x108]
mov eax, ebx
mov ebx, dword [ebp - 0x114]
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x78]
xor eax, edi
and eax, dword [ebp - 0x120]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x124]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x108], esi
mov eax, dword [ebp - 0x124]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or edi, dword [ebp - 0x11c]
and edi, dword [ebp - 0x10c]
or edi, eax
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0x118], edi
mov eax, esi
add dword [ebp - 0x118], ecx
add edx, 0x650a7354
ror eax, 0xb
mov ecx, esi
mov edi, dword [ebp - 0x10c]
ror ecx, 0x19
xor ecx, eax
mov eax, esi
mov esi, dword [ebp - 0x120]
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x74]
xor eax, esi
and eax, dword [ebp - 0x108]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x118]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x10c], edi
mov eax, dword [ebp - 0x118]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov ebx, eax
and eax, dword [ebp - 0x118]
add ecx, edx
or ebx, dword [ebp - 0x118]
and ebx, dword [ebp - 0x11c]
or ebx, eax
mov edx, dword [ebp - 0x114]
mov dword [ebp - 0x110], ebx
mov eax, edi
add dword [ebp - 0x110], ecx
add edx, 0x766a0abb
ror eax, 0xb
mov ecx, edi
ror ecx, 0x19
xor ecx, eax
mov ebx, dword [ebp - 0x11c]
mov eax, edi
mov edi, dword [ebp - 0x108]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x70]
xor eax, edi
and eax, dword [ebp - 0x10c]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x110]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x11c], ebx
mov eax, dword [ebp - 0x110]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x110]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x118]
or esi, dword [ebp - 0x118]
and esi, dword [ebp - 0x124]
or esi, eax
mov edx, dword [ebp - 0x120]
mov dword [ebp - 0x114], esi
mov eax, ebx
add dword [ebp - 0x114], ecx
add edx, 0x81c2c92e
ror eax, 0xb
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov esi, dword [ebp - 0x124]
mov eax, ebx
mov ebx, dword [ebp - 0x10c]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x6c]
xor eax, ebx
and eax, dword [ebp - 0x11c]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x114]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x124], esi
mov eax, dword [ebp - 0x114]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov edi, eax
and eax, dword [ebp - 0x110]
or edi, dword [ebp - 0x110]
and edi, dword [ebp - 0x118]
or edi, eax
mov dword [ebp - 0x120], edi
add ecx, edx
mov edi, dword [ebp - 0x118]
add dword [ebp - 0x120], ecx
mov eax, esi
ror eax, 0xb
mov ecx, esi
mov edx, dword [ebp - 0x108]
ror ecx, 0x19
add edx, 0x92722c85
xor ecx, eax
mov eax, esi
mov esi, dword [ebp - 0x11c]
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x68]
xor eax, esi
and eax, dword [ebp - 0x124]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x120]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x118], edi
mov eax, dword [ebp - 0x120]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x120]
or ebx, dword [ebp - 0x120]
and ebx, dword [ebp - 0x110]
or ebx, eax
mov edx, dword [ebp - 0x10c]
mov dword [ebp - 0x108], ebx
mov eax, edi
add dword [ebp - 0x108], ecx
add edx, 0xa2bfe8a1
ror eax, 0xb
mov ecx, edi
ror ecx, 0x19
xor ecx, eax
mov ebx, dword [ebp - 0x110]
mov eax, edi
mov edi, dword [ebp - 0x124]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x64]
xor eax, esi
and eax, dword [ebp - 0x118]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x108]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x110], ebx
mov eax, dword [ebp - 0x108]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x120]
mov esi, eax
add ecx, edx
or esi, dword [ebp - 0x108]
and eax, dword [ebp - 0x108]
and esi, dword [ebp - 0x114]
or esi, eax
mov eax, ebx
mov dword [ebp - 0x10c], esi
add dword [ebp - 0x10c], ecx
mov ecx, ebx
ror ecx, 0x19
ror eax, 0xb
xor ecx, eax
mov edx, dword [ebp - 0x11c]
mov eax, ebx
mov esi, dword [ebp - 0x114]
ror eax, 6
add edx, 0xa81a664b
xor ecx, eax
mov ebx, dword [ebp - 0x118]
add ecx, dword [ebp - 0x60]
mov eax, edi
xor eax, ebx
and eax, dword [ebp - 0x110]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x10c]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x114], esi
mov eax, dword [ebp - 0x10c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x108]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x10c]
or edi, dword [ebp - 0x10c]
and edi, dword [ebp - 0x120]
or edi, eax
mov edx, dword [ebp - 0x124]
mov dword [ebp - 0x11c], edi
mov eax, esi
add dword [ebp - 0x11c], ecx
add edx, 0xc24b8b70
ror eax, 0xb
mov ecx, esi
ror ecx, 0x19
xor ecx, eax
mov edi, dword [ebp - 0x120]
mov eax, esi
mov esi, dword [ebp - 0x110]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x5c]
xor eax, ebx
and eax, dword [ebp - 0x114]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x11c]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x120], edi
mov eax, dword [ebp - 0x11c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10c]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or ebx, dword [ebp - 0x11c]
and ebx, dword [ebp - 0x108]
or ebx, eax
mov eax, edi
mov dword [ebp - 0x124], ebx
add dword [ebp - 0x124], ecx
mov ecx, edi
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, edi
ror eax, 6
xor ecx, eax
add ecx, dword [ebp - 0x58]
mov edi, dword [ebp - 0x114]
mov eax, edi
xor eax, esi
mov edx, dword [ebp - 0x118]
and eax, dword [ebp - 0x120]
add edx, 0xc76c51a3
xor eax, esi
mov ebx, dword [ebp - 0x108]
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x124]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x108], ebx
mov eax, dword [ebp - 0x124]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or esi, dword [ebp - 0x11c]
and esi, dword [ebp - 0x10c]
or esi, eax
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0x118], esi
mov eax, ebx
add dword [ebp - 0x118], ecx
add edx, 0xd192e819
ror eax, 0xb
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov esi, dword [ebp - 0x10c]
mov eax, ebx
mov ebx, dword [ebp - 0x120]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x54]
xor eax, ebx
and eax, dword [ebp - 0x108]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x118]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x10c], esi
mov eax, dword [ebp - 0x118]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x118]
or edi, dword [ebp - 0x118]
and edi, dword [ebp - 0x11c]
or edi, eax
mov eax, esi
ror eax, 0xb
mov dword [ebp - 0x110], edi
add dword [ebp - 0x110], ecx
mov ecx, esi
ror ecx, 0x19
xor ecx, eax
mov eax, esi
mov esi, dword [ebp - 0x108]
ror eax, 6
xor ecx, eax
mov eax, ebx
xor eax, esi
and eax, dword [ebp - 0x10c]
xor eax, ebx
add ecx, dword [ebp - 0x50]
add eax, ecx
mov edx, dword [ebp - 0x114]
mov edi, dword [ebp - 0x11c]
add edx, 0xd6990624
add edx, eax
mov eax, dword [ebp - 0x110]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x11c], edi
mov eax, dword [ebp - 0x110]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x110]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x118]
or ebx, dword [ebp - 0x118]
and ebx, dword [ebp - 0x124]
or ebx, eax
mov edx, dword [ebp - 0x120]
mov dword [ebp - 0x114], ebx
mov eax, edi
add dword [ebp - 0x114], ecx
add edx, 0xf40e3585
ror eax, 0xb
mov ecx, edi
ror ecx, 0x19
xor ecx, eax
mov ebx, dword [ebp - 0x124]
mov eax, edi
mov edi, dword [ebp - 0x10c]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x4c]
xor eax, edi
and eax, dword [ebp - 0x11c]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x114]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x124], ebx
mov eax, dword [ebp - 0x114]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x114]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x110]
or esi, dword [ebp - 0x110]
and esi, dword [ebp - 0x118]
mov edx, dword [ebp - 0x108]
or esi, eax
mov dword [ebp - 0x120], esi
mov eax, ebx
add dword [ebp - 0x120], ecx
add edx, 0x106aa070
ror eax, 0xb
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov eax, ebx
mov ebx, dword [ebp - 0x11c]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x48]
xor eax, ebx
and eax, dword [ebp - 0x124]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x120]
mov ecx, eax
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov esi, dword [ebp - 0x118]
mov eax, dword [ebp - 0x120]
add esi, edx
ror eax, 2
xor ecx, eax
mov dword [ebp - 0x118], esi
mov eax, dword [ebp - 0x114]
add ecx, edx
mov edi, eax
mov edx, dword [ebp - 0x10c]
and eax, dword [ebp - 0x120]
add edx, 0x19a4c116
or edi, dword [ebp - 0x120]
and edi, dword [ebp - 0x110]
or edi, eax
mov eax, esi
ror eax, 0xb
mov dword [ebp - 0x108], edi
add dword [ebp - 0x108], ecx
mov ecx, esi
ror ecx, 0x19
xor ecx, eax
mov edi, dword [ebp - 0x110]
mov eax, esi
mov esi, dword [ebp - 0x124]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x44]
xor eax, ebx
and eax, dword [ebp - 0x118]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x108]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x110], edi
mov eax, dword [ebp - 0x108]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x120]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x108]
or ebx, dword [ebp - 0x108]
and ebx, dword [ebp - 0x114]
or ebx, eax
mov edx, dword [ebp - 0x11c]
mov dword [ebp - 0x10c], ebx
mov eax, edi
add dword [ebp - 0x10c], ecx
add edx, 0x1e376c08
mov ebx, dword [ebp - 0x114]
mov ecx, edi
ror eax, 0xb
ror ecx, 0x19
xor ecx, eax
mov eax, edi
mov edi, dword [ebp - 0x118]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x40]
xor eax, edi
and eax, dword [ebp - 0x110]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x10c]
add ebx, edx
mov ecx, eax
mov dword [ebp - 0x114], ebx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, dword [ebp - 0x10c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x108]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x10c]
or esi, dword [ebp - 0x10c]
and esi, dword [ebp - 0x120]
or esi, eax
mov edx, dword [ebp - 0x124]
mov dword [ebp - 0x11c], esi
mov eax, ebx
add dword [ebp - 0x11c], ecx
add edx, 0x2748774c
ror eax, 0xb
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov esi, dword [ebp - 0x120]
mov eax, ebx
mov ebx, dword [ebp - 0x110]
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x3c]
xor eax, edi
and eax, dword [ebp - 0x114]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x11c]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x120], esi
mov eax, dword [ebp - 0x11c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x10c]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or edi, dword [ebp - 0x11c]
and edi, dword [ebp - 0x108]
or edi, eax
mov edx, dword [ebp - 0x118]
mov dword [ebp - 0x12c], edi
mov eax, esi
add dword [ebp - 0x12c], ecx
add edx, 0x34b0bcb5
ror eax, 0xb
mov ecx, esi
mov edi, dword [ebp - 0x108]
ror ecx, 0x19
xor ecx, eax
mov eax, esi
mov esi, dword [ebp - 0x114]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x38]
xor eax, ebx
and eax, dword [ebp - 0x120]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x12c]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x108], edi
mov eax, dword [ebp - 0x12c]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x12c]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x11c]
or ebx, dword [ebp - 0x11c]
and ebx, dword [ebp - 0x10c]
or ebx, eax
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0x118], ebx
mov eax, edi
add dword [ebp - 0x118], ecx
add edx, 0x391c0cb3
ror eax, 0xb
mov ecx, edi
ror ecx, 0x19
xor ecx, eax
mov ebx, dword [ebp - 0x10c]
mov eax, edi
mov edi, dword [ebp - 0x120]
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x34]
xor eax, edi
and eax, dword [ebp - 0x108]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x118]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x10c], ebx
mov eax, dword [ebp - 0x118]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x12c]
mov esi, eax
add ecx, edx
and eax, dword [ebp - 0x118]
or esi, dword [ebp - 0x118]
and esi, dword [ebp - 0x11c]
or esi, eax
mov edx, dword [ebp - 0x114]
mov dword [ebp - 0x110], esi
mov eax, ebx
add dword [ebp - 0x110], ecx
add edx, 0x4ed8aa4a
ror eax, 0xb
mov ecx, ebx
ror ecx, 0x19
xor ecx, eax
mov esi, dword [ebp - 0x11c]
mov eax, ebx
mov ebx, dword [ebp - 0x108]
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x30]
xor eax, ebx
and eax, dword [ebp - 0x10c]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x110]
mov ecx, eax
add esi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x11c], esi
mov eax, dword [ebp - 0x110]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x110]
mov edi, eax
or edi, dword [ebp - 0x118]
and edi, dword [ebp - 0x12c]
and eax, dword [ebp - 0x118]
add ecx, edx
or edi, eax
mov edx, dword [ebp - 0x120]
mov eax, esi
mov dword [ebp - 0x124], edi
add dword [ebp - 0x124], ecx
add edx, 0x5b9cca4f
ror eax, 0xb
mov ecx, esi
ror ecx, 0x19
xor ecx, eax
mov edi, dword [ebp - 0x12c]
mov eax, esi
mov esi, dword [ebp - 0x10c]
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x2c]
xor eax, esi
and eax, dword [ebp - 0x11c]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x124]
mov ecx, eax
add edi, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x12c], edi
mov eax, dword [ebp - 0x124]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov ebx, eax
add ecx, edx
and eax, dword [ebp - 0x110]
or ebx, dword [ebp - 0x110]
and ebx, dword [ebp - 0x118]
or ebx, eax
mov edx, dword [ebp - 0x108]
mov dword [ebp - 0x128], ebx
mov eax, edi
add dword [ebp - 0x128], ecx
add edx, 0x682e6ff3
ror eax, 0xb
mov ecx, edi
ror ecx, 0x19
xor ecx, eax
mov ebx, dword [ebp - 0x118]
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, esi
xor eax, dword [ebp - 0x11c]
add ecx, dword [ebp - 0x28]
and eax, edi
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [ebp - 0x128]
mov ecx, eax
add ebx, edx
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov dword [ebp - 0x118], ebx
mov eax, dword [ebp - 0x128]
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x124]
mov esi, eax
add ecx, edx
or esi, dword [ebp - 0x128]
and esi, dword [ebp - 0x110]
and eax, dword [ebp - 0x128]
or esi, eax
mov dword [ebp - 0x108], esi
add dword [ebp - 0x108], ecx
mov ecx, ebx
ror ecx, 0x19
mov eax, ebx
ror eax, 0xb
xor ecx, eax
mov edx, dword [ebp - 0x10c]
mov eax, ebx
mov esi, dword [ebp - 0x110]
mov ebx, dword [ebp - 0x11c]
add edx, 0x748f82ee
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x24]
xor eax, ebx
and eax, dword [ebp - 0x118]
mov edi, dword [ebp - 0x108]
xor eax, ebx
add eax, ecx
mov ecx, edi
add edx, eax
ror ecx, 0x16
mov eax, edi
add esi, edx
ror eax, 0xd
xor ecx, eax
mov dword [ebp - 0x110], esi
mov eax, edi
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x128]
mov edi, eax
add ecx, edx
and eax, dword [ebp - 0x108]
lea edx, [ebx + 0x78a5636f]
or edi, dword [ebp - 0x108]
and edi, dword [ebp - 0x124]
or edi, eax
mov ebx, dword [ebp - 0x124]
add edi, ecx
mov eax, esi
ror eax, 0xb
mov ecx, esi
ror ecx, 0x19
xor ecx, eax
mov dword [ebp - 0x114], edi
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x12c]
xor eax, dword [ebp - 0x118]
add ecx, dword [ebp - 0x20]
and eax, esi
xor eax, dword [ebp - 0x12c]
add eax, ecx
mov ecx, edi
add edx, eax
ror ecx, 0x16
mov eax, edi
add ebx, edx
ror eax, 0xd
xor ecx, eax
mov dword [ebp - 0x124], ebx
mov eax, edi
ror eax, 2
xor ecx, eax
mov eax, dword [ebp - 0x108]
mov esi, eax
add ecx, edx
or esi, edi
and eax, edi
and esi, dword [ebp - 0x128]
or esi, eax
mov eax, ebx
add esi, ecx
ror eax, 0xb
mov ecx, ebx
mov dword [ebp - 0x10c], esi
ror ecx, 0x19
xor ecx, eax
mov eax, ebx
ror eax, 6
xor ecx, eax
mov edx, dword [ebp - 0x12c]
add ecx, dword [ebp - 0x1c]
add edx, 0x84c87814
mov eax, dword [ebp - 0x110]
xor eax, dword [ebp - 0x118]
and eax, ebx
mov ebx, edi
xor eax, dword [ebp - 0x118]
or ebx, esi
add eax, ecx
and ebx, dword [ebp - 0x108]
add edx, eax
mov ecx, esi
add dword [ebp - 0x128], edx
mov eax, esi
ror eax, 0xd
ror ecx, 0x16
xor ecx, eax
mov eax, esi
ror eax, 2
xor ecx, eax
mov eax, edi
mov edi, dword [ebp - 0x128]
and eax, esi
or ebx, eax
add ecx, edx
add ebx, ecx
mov edx, dword [ebp - 0x118]
mov ecx, edi
mov dword [ebp - 0x12c], ebx
ror ecx, 0x19
mov eax, edi
ror eax, 0xb
add edx, 0x8cc70208
xor ecx, eax
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x124]
xor eax, dword [ebp - 0x110]
add ecx, dword [ebp - 0x18]
and eax, edi
xor eax, dword [ebp - 0x110]
mov edi, ebx
add eax, ecx
or edi, esi
and edi, dword [ebp - 0x114]
add edx, eax
add dword [ebp - 0x108], edx
mov ecx, ebx
ror ecx, 0x16
mov eax, ebx
ror eax, 0xd
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, ebx
and eax, esi
add ecx, edx
mov esi, dword [ebp - 0x108]
or edi, eax
mov edx, dword [ebp - 0x110]
add edi, ecx
mov ecx, esi
mov dword [ebp - 0x120], edi
ror ecx, 0x19
mov eax, esi
ror eax, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x124]
xor eax, dword [ebp - 0x128]
add ecx, dword [ebp - 0x14]
and eax, esi
xor eax, dword [ebp - 0x124]
add eax, ecx
add edx, 0x90befffa
add edx, eax
mov ecx, edi
add dword [ebp - 0x114], edx
mov eax, edi
ror eax, 0xd
mov esi, ebx
ror ecx, 0x16
or esi, edi
xor ecx, eax
and esi, dword [ebp - 0x10c]
mov eax, edi
ror eax, 2
xor ecx, eax
mov eax, ebx
and eax, edi
add ecx, edx
mov edx, dword [ebp - 0x114]
or esi, eax
add esi, ecx
mov eax, edx
ror eax, 0xb
mov ecx, edx
ror ecx, 0x19
mov ebx, esi
xor ecx, eax
mov dword [ebp - 0x110], esi
mov eax, edx
or ebx, edi
ror eax, 6
xor ecx, eax
and ebx, dword [ebp - 0x12c]
add ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x128]
xor eax, dword [ebp - 0x108]
and eax, edx
mov edx, dword [ebp - 0x124]
xor eax, dword [ebp - 0x128]
add edx, 0xa4506ceb
add eax, ecx
mov ecx, esi
add edx, eax
ror ecx, 0x16
add dword [ebp - 0x10c], edx
mov eax, esi
ror eax, 0xd
xor ecx, eax
mov eax, esi
ror eax, 2
xor ecx, eax
mov eax, esi
and eax, edi
add ecx, edx
mov edx, dword [ebp - 0x10c]
or ebx, eax
add ebx, ecx
mov eax, edx
ror eax, 0xb
mov ecx, edx
ror ecx, 0x19
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x108]
xor eax, dword [ebp - 0x114]
add ecx, dword [ebp - 0xc]
and eax, edx
xor eax, dword [ebp - 0x108]
mov edx, dword [ebp - 0x128]
add eax, ecx
add edx, 0xbef9a3f7
mov ecx, ebx
add edx, eax
ror ecx, 0x16
add dword [ebp - 0x12c], edx
mov eax, ebx
ror eax, 0xd
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
add ecx, edx
mov edi, ebx
mov edx, dword [ebp - 0x12c]
or edi, esi
and edi, dword [ebp - 0x120]
mov eax, ebx
and eax, esi
mov esi, dword [ebp - 0x108]
or edi, eax
add esi, 0xc67178f2
add edi, ecx
mov eax, edx
ror eax, 0xb
mov ecx, edx
ror ecx, 0x19
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [ebp - 0x114]
xor eax, dword [ebp - 0x10c]
add ecx, dword [ebp - 8]
and eax, edx
xor eax, dword [ebp - 0x114]
mov edx, edi
add eax, ecx
ror edx, 0x16
add esi, eax
mov ecx, ebx
add dword [ebp - 0x120], esi
mov eax, edi
ror eax, 0xd
or ecx, edi
and ecx, dword [ebp - 0x110]
xor edx, eax
mov eax, edi
ror eax, 2
xor edx, eax
mov eax, ebx
and eax, edi
add edx, esi
or ecx, eax
mov eax, dword [ebp - 0x130]
add ecx, edx
add eax, ecx
mov ecx, dword [ebp - 0x134]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0x110]
add dword [ecx + 0x14], eax
mov eax, dword [ebp - 0x120]
add dword [ecx + 0x18], eax
mov eax, dword [ebp - 0x12c]
add dword [ecx + 0x1c], eax
add dword [ecx + 0xc], edi
mov eax, dword [ebp - 0x10c]
add dword [ecx + 0x20], eax
add dword [ecx + 0x10], ebx
mov eax, dword [ebp - 0x114]
add dword [ecx + 0x24], eax
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004ffcef
mov esp, ebp
pop ebp
ret