Function at 0x1c009000
Capabilities:
Hash data using sha512
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x144
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 0x10]
mov ecx, esi
shr ecx, 3
lea edx, [eax + ecx*8]
mov ecx, dword [ebp + 8]
mov dword [esp + 0x120], edx
mov edx, dword [ecx]
mov dword [esp + 0x10c], edx
mov dword [esp + 0x44], edx
mov edx, dword [ecx + 8]
push edi
mov edi, dword [ecx + 4]
mov dword [esp + 0x108], edx
mov dword [esp + 0x20], edx
mov edx, dword [ecx + 0x10]
mov dword [esp + 0x114], edi
mov dword [esp + 0x4c], edi
mov edi, dword [ecx + 0xc]
mov dword [esp + 0x100], edx
mov dword [esp + 0x38], edx
mov edx, dword [ecx + 0x18]
mov dword [esp + 0x10c], edi
mov dword [esp + 0x24], edi
mov edi, dword [ecx + 0x14]
mov dword [esp + 0x118], edx
mov dword [esp + 0x28], edx
mov edx, dword [ecx + 0x20]
mov dword [esp + 0x104], edi
mov dword [esp + 0x3c], edi
mov edi, dword [ecx + 0x1c]
mov dword [esp + 0x128], edx
mov dword [esp + 0x50], edx
mov edx, dword [ecx + 0x28]
mov dword [esp + 0x11c], edi
mov dword [esp + 0x2c], edi
mov edi, dword [ecx + 0x24]
mov dword [esp + 0xe8], edx
mov dword [esp + 0x30], edx
mov edx, dword [ecx + 0x30]
mov dword [esp + 0x12c], edi
mov dword [esp + 0x54], edi
mov edi, dword [ecx + 0x2c]
mov dword [esp + 0xf0], edx
mov dword [esp + 0x40], edx
mov edx, dword [ecx + 0x38]
mov dword [esp + 0xec], edi
mov dword [esp + 0x34], edi
mov edi, dword [ecx + 0x34]
mov dword [esp + 0xf8], edx
mov dword [esp + 0x58], edx
xor edx, edx
add dword [ecx + 0x40], esi
mov dword [esp + 0xf4], edi
mov dword [esp + 0x44], edi
mov edi, dword [ecx + 0x3c]
adc dword [ecx + 0x44], edx
mov dword [esp + 0xfc], edi
mov dword [esp + 0x5c], edi
mov edi, dword [ecx + 0x44]
mov dword [esp + 0xe4], eax
cmp edi, edx
ja 0x1c00912d
jb 0x1c009125
mov edx, dword [ecx + 0x40]
cmp edx, esi
jae 0x1c00912d
add dword [ecx + 0x48], 1
adc dword [ecx + 0x4c], 0
cmp eax, dword [esp + 0x124]
jae 0x1c012c4e
mov dword [esp + 0x14], 0
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov ebx, eax
mov edi, ecx
shrd edi, ebx, 0x10
xor edx, edx
or edx, edi
mov esi, eax
and esi, 0xff0000
shr ebx, 0x10
or esi, ebx
shrd edx, esi, 0x10
xor edi, edi
or edx, edi
shr esi, 0x10
mov ebx, eax
and ebx, 0xff00
or esi, ebx
shrd edx, esi, 0x10
or edx, edi
shr esi, 0x10
movzx ebx, al
or esi, ebx
mov edi, ecx
mov dword [esp + 0x134], eax
shld eax, edi, 0x10
shl edi, 0x10
mov dword [esp + 0x130], ecx
xor ebx, ebx
or eax, ebx
and ecx, 0xff00
or edi, ecx
mov ecx, dword [esp + 0x130]
shld eax, edi, 0x10
shl edi, 0x10
or eax, ebx
and ecx, 0xff0000
or edi, ecx
shld eax, edi, 0x10
shrd edx, esi, 8
mov ecx, eax
mov eax, dword [esp + 0x130]
or ecx, ebx
shl edi, 0x10
and eax, 0xff000000
or edi, eax
mov eax, dword [esp + 0x14]
shld ecx, edi, 8
shr esi, 8
or esi, ecx
mov ecx, dword [esp + 0xe4]
mov dword [esp + eax*8 + 0x64], esi
shl edi, 8
or edx, edi
mov dword [esp + eax*8 + 0x60], edx
mov eax, dword [ecx + 8]
mov ecx, dword [ecx + 0xc]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x10
xor edx, edx
shr ebx, 0x10
or edx, edi
mov esi, ecx
and esi, 0xff0000
or esi, ebx
shrd edx, esi, 0x10
shr esi, 0x10
xor edi, edi
mov ebx, ecx
and ebx, 0xff00
or esi, ebx
or edx, edi
shrd edx, esi, 0x10
movzx ebx, cl
shr esi, 0x10
or edx, edi
or esi, ebx
mov dword [esp + 0x148], eax
mov dword [esp + 0x14c], ecx
shrd edx, esi, 8
mov edi, eax
shld ecx, edi, 0x10
shl edi, 0x10
and eax, 0xff00
or edi, eax
mov eax, dword [esp + 0x148]
xor ebx, ebx
or ecx, ebx
shld ecx, edi, 0x10
shl edi, 0x10
or ecx, ebx
and eax, 0xff0000
or edi, eax
mov eax, dword [esp + 0x148]
shld ecx, edi, 0x10
shl edi, 0x10
or ecx, ebx
and eax, 0xff000000
or edi, eax
mov eax, dword [esp + 0x14]
shld ecx, edi, 8
shl edi, 8
or edx, edi
shr esi, 8
or esi, ecx
mov ecx, dword [esp + 0xe4]
mov dword [esp + eax*8 + 0x6c], esi
mov dword [esp + eax*8 + 0x68], edx
mov eax, dword [ecx + 0x10]
mov ecx, dword [ecx + 0x14]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 0x10
mov esi, ecx
and esi, 0xff0000
xor edx, edx
or edx, edi
shr ebx, 0x10
or esi, ebx
shrd edx, esi, 0x10
xor edi, edi
or edx, edi
mov ebx, ecx
shr esi, 0x10
and ebx, 0xff00
or esi, ebx
shrd edx, esi, 0x10
or edx, edi
movzx ebx, cl
mov edi, eax
mov dword [esp + 0x144], ecx
shld ecx, edi, 0x10
shl edi, 0x10
mov dword [esp + 0x140], eax
shr esi, 0x10
and eax, 0xff00
or edi, eax
mov eax, dword [esp + 0x140]
or esi, ebx
xor ebx, ebx
or ecx, ebx
shld ecx, edi, 0x10
shl edi, 0x10
and eax, 0xff0000
or edi, eax
mov eax, dword [esp + 0x140]
or ecx, ebx
shld ecx, edi, 0x10
shl edi, 0x10
and eax, 0xff000000
or edi, eax
mov eax, dword [esp + 0x14]
or ecx, ebx
shrd edx, esi, 8
shld ecx, edi, 8
shl edi, 8
shr esi, 8
or edx, edi
or esi, ecx
mov dword [esp + eax*8 + 0x70], edx
mov dword [esp + eax*8 + 0x74], esi
mov ecx, dword [esp + 0xe4]
mov eax, dword [ecx + 0x18]
mov ecx, dword [ecx + 0x1c]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 0x10
mov esi, ecx
and esi, 0xff0000
xor edx, edx
or edx, edi
shr ebx, 0x10
or esi, ebx
shrd edx, esi, 0x10
xor edi, edi
or edx, edi
mov ebx, ecx
shr esi, 0x10
and ebx, 0xff00
or esi, ebx
shrd edx, esi, 0x10
or edx, edi
movzx ebx, cl
mov dword [esp + 0x13c], ecx
mov edi, eax
shld ecx, edi, 0x10
shl edi, 0x10
mov dword [esp + 0x138], eax
shr esi, 0x10
and eax, 0xff00
or edi, eax
mov eax, dword [esp + 0x138]
or esi, ebx
xor ebx, ebx
or ecx, ebx
shld ecx, edi, 0x10
shl edi, 0x10
and eax, 0xff0000
or edi, eax
mov eax, dword [esp + 0x138]
or ecx, ebx
shld ecx, edi, 0x10
shl edi, 0x10
and eax, 0xff000000
or edi, eax
mov eax, dword [esp + 0xe4]
or ecx, ebx
shrd edx, esi, 8
shld ecx, edi, 8
shr esi, 8
or esi, ecx
mov ecx, dword [esp + 0x14]
shl edi, 8
or edx, edi
mov dword [esp + ecx*8 + 0x78], edx
mov dword [esp + ecx*8 + 0x7c], esi
add ecx, 4
add eax, 0x20
cmp ecx, 0x10
mov dword [esp + 0x14], ecx
mov dword [esp + 0xe4], eax
jl 0x1c009142
mov esi, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
mov edi, edx
mov ebx, esi
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov eax, esi
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x50]
xor eax, ebx
mov ebx, dword [esp + 0x54]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x40]
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x44]
mov edi, edx
xor edi, dword [esp + 0x30]
mov ebx, esi
xor ebx, dword [esp + 0x34]
and edi, dword [esp + 0x50]
and ebx, dword [esp + 0x54]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x60]
mov edx, dword [esp + 0x4c]
adc ecx, dword [esp + 0x64]
add eax, dword [esp + 0x58]
mov ebx, edx
adc ecx, dword [esp + 0x5c]
add eax, 0xd728ae22
adc ecx, 0x428a2f98
add dword [esp + 0x28], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x48]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x4c]
xor eax, ebx
mov ebx, dword [esp + 0x48]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
or edi, ecx
mov ecx, dword [esp + 0x20]
xor eax, edi
xor esi, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x48]
and ecx, dword [esp + 0x48]
and esi, dword [esp + 0x38]
mov edi, edx
or edi, dword [esp + 0x4c]
and edx, dword [esp + 0x4c]
and edi, dword [esp + 0x3c]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x28]
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x2c]
adc eax, dword [esp + 0x1c]
mov ebx, esi
mov dword [esp + 0x5c], eax
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
mov dword [esp + 0x58], ecx
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x28]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x2c]
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x30]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x34]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x54]
and edi, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x68]
adc ecx, dword [esp + 0x6c]
add eax, dword [esp + 0x40]
adc ecx, dword [esp + 0x44]
add eax, 0x23ef65cd
adc ecx, 0x71374491
add dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov eax, ecx
xor esi, esi
shl eax, 4
mov edi, ecx
mov edx, dword [esp + 0x5c]
mov ebx, edx
shrd edi, ebx, 0x1c
or esi, edi
shr ebx, 0x1c
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x58]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x5c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x58]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x48]
and ecx, dword [esp + 0x48]
and esi, dword [esp + 0x20]
mov edi, edx
or edi, dword [esp + 0x4c]
and edx, dword [esp + 0x4c]
and edi, dword [esp + 0x24]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x38]
add ecx, esi
mov esi, dword [esp + 0x3c]
adc eax, edi
add ecx, dword [esp + 0x18]
mov ebx, esi
adc eax, dword [esp + 0x1c]
mov edi, edx
shld ebx, edi, 0x17
mov dword [esp + 0x44], eax
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
mov dword [esp + 0x40], ecx
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x38]
shr esi, 0x12
shl edi, 0xe
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x3c]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x50]
shl esi, 0x12
shr ebx, 0xe
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x54]
mov edi, edx
xor edi, dword [esp + 0x28]
and edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x2c]
xor edi, edx
and ebx, dword [esp + 0x3c]
mov edx, dword [esp + 0x44]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x70]
mov ebx, edx
adc ecx, dword [esp + 0x74]
add eax, dword [esp + 0x30]
adc ecx, dword [esp + 0x34]
add eax, 0xec4d3b2f
adc ecx, 0xb5c0fbcf
add dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shl eax, 4
shr ebx, 0x1c
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x40]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x44]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x58]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x40]
and ecx, dword [esp + 0x40]
and esi, dword [esp + 0x48]
mov edi, edx
or edi, dword [esp + 0x44]
and edx, dword [esp + 0x44]
and edi, dword [esp + 0x4c]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x20]
add ecx, esi
mov esi, dword [esp + 0x24]
adc eax, edi
add ecx, dword [esp + 0x18]
mov edi, edx
adc eax, dword [esp + 0x1c]
mov ebx, esi
shld ebx, edi, 0x17
mov dword [esp + 0x34], eax
mov eax, esi
shl edi, 0x17
mov dword [esp + 0x30], ecx
shr eax, 9
xor ecx, ecx
or eax, edi
or ecx, ebx
mov edi, edx
shrd edx, esi, 0x12
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x20]
xor eax, ebx
mov ebx, dword [esp + 0x24]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x28]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x2c]
mov edi, edx
xor edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x3c]
and edi, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x78]
mov edx, dword [esp + 0x34]
adc ecx, dword [esp + 0x7c]
add eax, dword [esp + 0x50]
mov ebx, edx
adc ecx, dword [esp + 0x54]
add eax, 0x8189dbbc
adc ecx, 0xe9b5dba5
add dword [esp + 0x48], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x34]
xor eax, ebx
mov ebx, dword [esp + 0x30]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
xor edi, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x44]
or edi, ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x14], esi
xor eax, edi
mov esi, ecx
or esi, dword [esp + 0x30]
mov edi, edx
or edi, dword [esp + 0x34]
and esi, dword [esp + 0x58]
and edi, dword [esp + 0x5c]
and ecx, dword [esp + 0x30]
and edx, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x48]
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x4c]
adc eax, dword [esp + 0x1c]
mov ebx, esi
mov dword [esp + 0x54], eax
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
mov dword [esp + 0x50], ecx
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x48]
xor eax, ebx
mov ebx, dword [esp + 0x4c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x38]
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x3c]
mov edi, edx
xor edi, dword [esp + 0x20]
mov ebx, esi
xor ebx, dword [esp + 0x24]
and edi, dword [esp + 0x48]
and ebx, dword [esp + 0x4c]
xor edi, edx
mov edx, dword [esp + 0x54]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x80]
mov ebx, edx
adc ecx, dword [esp + 0x84]
add eax, dword [esp + 0x28]
adc ecx, dword [esp + 0x2c]
add eax, 0xf348b538
adc ecx, 0x3956c25b
add dword [esp + 0x58], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x50]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
xor ebx, ebx
or edi, ecx
mov ecx, dword [esp + 0x54]
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x50]
xor esi, edi
xor edi, edi
mov edx, ecx
shld ecx, ebx, 0x19
or edi, ecx
mov ecx, dword [esp + 0x30]
xor eax, edi
shl ebx, 0x19
shr edx, 7
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x50]
and ecx, dword [esp + 0x50]
and esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x54]
and edx, dword [esp + 0x54]
and edi, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x58]
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x5c]
adc eax, dword [esp + 0x1c]
mov ebx, esi
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov dword [esp + 0x2c], eax
mov eax, esi
shr eax, 9
or eax, edi
mov dword [esp + 0x28], ecx
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x58]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x5c]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x20]
shl esi, 0x12
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x24]
mov edi, edx
xor edi, dword [esp + 0x48]
mov ebx, esi
xor ebx, dword [esp + 0x4c]
and edi, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x88]
adc ecx, dword [esp + 0x8c]
add eax, dword [esp + 0x38]
adc ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x2c]
add eax, 0xb605d019
adc ecx, 0x59f111f1
add dword [esp + 0x40], eax
mov dword [esp + 0x1c], ecx
mov ebx, edx
adc dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov dword [esp + 0x18], eax
mov eax, ecx
shr ebx, 0x1c
shl eax, 4
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x28]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x2c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x50]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x28]
and ecx, dword [esp + 0x28]
and esi, dword [esp + 0x30]
mov edi, edx
or edi, dword [esp + 0x2c]
and edx, dword [esp + 0x2c]
and edi, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x40]
add ecx, esi
mov esi, dword [esp + 0x44]
adc eax, edi
add ecx, dword [esp + 0x18]
mov ebx, esi
adc eax, dword [esp + 0x1c]
mov edi, edx
shld ebx, edi, 0x17
mov dword [esp + 0x3c], eax
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
mov dword [esp + 0x38], ecx
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shl edi, 0xe
shr esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x40]
or edi, esi
xor ecx, edi
mov esi, edx
xor eax, ebx
xor edi, edi
shl esi, 0x12
mov ebx, dword [esp + 0x44]
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x48]
xor eax, edi
mov edi, dword [esp + 0x58]
xor edi, edx
and edi, dword [esp + 0x40]
shr ebx, 0xe
or esi, ebx
mov ebx, dword [esp + 0x5c]
xor ecx, esi
mov esi, dword [esp + 0x4c]
xor ebx, esi
and ebx, dword [esp + 0x44]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x90]
mov edx, dword [esp + 0x3c]
adc ecx, dword [esp + 0x94]
add eax, dword [esp + 0x20]
mov ebx, edx
adc ecx, dword [esp + 0x24]
add eax, 0xaf194f9b
adc ecx, 0x923f82a4
add dword [esp + 0x30], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x3c]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x38]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x28]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x14], esi
xor eax, edi
mov esi, ecx
or esi, dword [esp + 0x38]
and ecx, dword [esp + 0x38]
and esi, dword [esp + 0x50]
mov edi, edx
or edi, dword [esp + 0x3c]
and edx, dword [esp + 0x3c]
and edi, dword [esp + 0x54]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
add ecx, esi
mov esi, dword [esp + 0x34]
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
mov edx, dword [esp + 0x30]
mov edi, edx
mov ebx, esi
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov eax, esi
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x30]
xor eax, ebx
mov ebx, dword [esp + 0x34]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x58]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x5c]
mov edi, edx
xor edi, dword [esp + 0x40]
mov ebx, esi
xor ebx, dword [esp + 0x44]
and edi, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x98]
mov edx, dword [esp + 0x24]
adc ecx, dword [esp + 0x9c]
add eax, dword [esp + 0x48]
mov ebx, edx
adc ecx, dword [esp + 0x4c]
add eax, 0xda6d8118
adc ecx, 0xab1c5ed5
add dword [esp + 0x50], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x20]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x24]
xor eax, ebx
mov ebx, dword [esp + 0x20]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
or edi, ecx
mov ecx, dword [esp + 0x38]
xor eax, edi
xor esi, edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x20]
and ecx, dword [esp + 0x20]
and esi, dword [esp + 0x28]
mov edi, edx
or edi, dword [esp + 0x24]
and edx, dword [esp + 0x24]
and edi, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x50]
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x54]
adc eax, dword [esp + 0x1c]
mov ebx, esi
mov dword [esp + 0x4c], eax
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
mov dword [esp + 0x48], ecx
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x50]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x54]
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x40]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x44]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x30]
mov ebx, esi
xor ebx, dword [esp + 0x34]
and edi, dword [esp + 0x50]
and ebx, dword [esp + 0x54]
xor edi, edx
mov edx, dword [esp + 0x4c]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xa0]
adc ecx, dword [esp + 0xa4]
add eax, dword [esp + 0x58]
adc ecx, dword [esp + 0x5c]
add eax, 0xa3030242
adc ecx, 0xd807aa98
add dword [esp + 0x28], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x48]
mov eax, ecx
xor esi, esi
shl eax, 4
mov edi, ecx
mov ebx, edx
shrd edi, ebx, 0x1c
or esi, edi
shr ebx, 0x1c
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x48]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x4c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x20]
xor eax, edi
shl ebx, 0x19
shr edx, 7
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x48]
and ecx, dword [esp + 0x48]
and esi, dword [esp + 0x38]
mov edi, edx
or edi, dword [esp + 0x4c]
and edx, dword [esp + 0x4c]
and edi, dword [esp + 0x3c]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x28]
add ecx, esi
mov esi, dword [esp + 0x2c]
adc eax, edi
add ecx, dword [esp + 0x18]
mov ebx, esi
adc eax, dword [esp + 0x1c]
mov edi, edx
shld ebx, edi, 0x17
mov dword [esp + 0x5c], eax
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
mov dword [esp + 0x58], ecx
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x28]
shr esi, 0x12
shl edi, 0xe
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x2c]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shl esi, 0x12
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x30]
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x34]
mov edi, edx
xor edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x54]
and edi, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xa8]
mov edx, dword [esp + 0x5c]
adc ecx, dword [esp + 0xac]
add eax, dword [esp + 0x40]
mov ebx, edx
adc ecx, dword [esp + 0x44]
add eax, 0x45706fbe
adc ecx, 0x12835b01
add dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov edi, ecx
shrd edi, ebx, 0x1c
mov eax, ecx
shr ebx, 0x1c
xor esi, esi
or esi, edi
shl eax, 4
or eax, ebx
xor ebx, ebx
mov edi, edx
shld edx, ecx, 0x1e
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x58]
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x5c]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shl ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x48]
xor eax, edi
shr edx, 7
or edx, ebx
mov ebx, dword [esp + 0x5c]
xor esi, edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x14], esi
mov esi, dword [esp + 0x58]
or ebx, edx
and ebx, dword [esp + 0x24]
mov edi, esi
or edi, ecx
and edi, dword [esp + 0x20]
and esi, ecx
mov ecx, dword [esp + 0x5c]
and ecx, edx
mov edx, dword [esp + 0x38]
or ebx, ecx
mov ecx, dword [esp + 0x14]
or edi, esi
mov esi, dword [esp + 0x3c]
add ecx, edi
adc eax, ebx
add ecx, dword [esp + 0x18]
mov edi, edx
adc eax, dword [esp + 0x1c]
mov ebx, esi
shld ebx, edi, 0x17
mov dword [esp + 0x44], eax
mov eax, esi
mov dword [esp + 0x40], ecx
shr eax, 9
shl edi, 0x17
xor ecx, ecx
or eax, edi
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x38]
xor eax, ebx
mov ebx, dword [esp + 0x3c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x50]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x54]
mov edi, edx
xor edi, dword [esp + 0x28]
mov ebx, esi
xor ebx, dword [esp + 0x2c]
and edi, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xb0]
mov edx, dword [esp + 0x44]
adc ecx, dword [esp + 0xb4]
add eax, dword [esp + 0x30]
mov ebx, edx
adc ecx, dword [esp + 0x34]
add eax, 0x4ee4b28c
adc ecx, 0x243185be
add dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x44]
xor eax, ebx
mov ebx, dword [esp + 0x40]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
xor edi, edi
shl ebx, 0x19
or edx, ebx
or edi, ecx
mov ecx, dword [esp + 0x58]
xor esi, edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x14], esi
xor eax, edi
mov esi, ecx
or esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x44]
and esi, dword [esp + 0x48]
and edi, dword [esp + 0x4c]
and ecx, dword [esp + 0x40]
and edx, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x20]
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x24]
adc eax, dword [esp + 0x1c]
mov ebx, esi
mov dword [esp + 0x34], eax
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
mov dword [esp + 0x30], ecx
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x20]
xor eax, ebx
mov ebx, dword [esp + 0x24]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x28]
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x2c]
mov edi, edx
xor edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x3c]
and edi, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor edi, edx
mov edx, dword [esp + 0x34]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xb8]
mov ebx, edx
adc ecx, dword [esp + 0xbc]
add eax, dword [esp + 0x50]
adc ecx, dword [esp + 0x54]
add eax, 0xd5ffb4e2
adc ecx, 0x550c7dc3
add dword [esp + 0x48], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shr ebx, 0x1c
shl eax, 4
shld edx, ecx, 0x1e
or eax, ebx
shr edi, 2
xor ebx, ebx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x34]
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x30]
xor esi, edi
xor edi, edi
mov edx, ecx
shld ecx, ebx, 0x19
or edi, ecx
mov ecx, dword [esp + 0x40]
xor eax, edi
shl ebx, 0x19
shr edx, 7
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x30]
and ecx, dword [esp + 0x30]
and esi, dword [esp + 0x58]
mov edi, edx
or edi, dword [esp + 0x34]
and edx, dword [esp + 0x34]
and edi, dword [esp + 0x5c]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x48]
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x4c]
adc eax, dword [esp + 0x1c]
mov ebx, esi
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov dword [esp + 0x54], eax
mov eax, esi
shr eax, 9
or eax, edi
mov dword [esp + 0x50], ecx
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x48]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x4c]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x38]
shl esi, 0x12
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x3c]
mov edi, edx
xor edi, dword [esp + 0x20]
mov ebx, esi
xor ebx, dword [esp + 0x24]
and edi, dword [esp + 0x48]
and ebx, dword [esp + 0x4c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xc0]
adc ecx, dword [esp + 0xc4]
add eax, dword [esp + 0x28]
adc ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x54]
add eax, 0xf27b896f
adc ecx, 0x72be5d74
add dword [esp + 0x58], eax
mov dword [esp + 0x1c], ecx
mov ebx, edx
adc dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x50]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov dword [esp + 0x18], eax
mov eax, ecx
shr ebx, 0x1c
shl eax, 4
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x50]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x54]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x30]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x50]
and ecx, dword [esp + 0x50]
and esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x54]
and edx, dword [esp + 0x54]
and edi, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x58]
add ecx, esi
mov esi, dword [esp + 0x5c]
adc eax, edi
add ecx, dword [esp + 0x18]
mov ebx, esi
adc eax, dword [esp + 0x1c]
mov edi, edx
shld ebx, edi, 0x17
mov dword [esp + 0x2c], eax
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
mov dword [esp + 0x28], ecx
xor ecx, ecx
or ecx, ebx
shr esi, 0x12
xor ebx, ebx
shl edi, 0xe
or ebx, edx
mov edx, dword [esp + 0x58]
or edi, esi
xor eax, ebx
xor ecx, edi
mov esi, edx
xor edi, edi
mov ebx, dword [esp + 0x5c]
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x20]
xor eax, edi
shr ebx, 0xe
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x24]
mov edi, edx
xor edi, dword [esp + 0x48]
mov ebx, esi
xor ebx, dword [esp + 0x4c]
and edi, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xc8]
mov edx, dword [esp + 0x2c]
adc ecx, dword [esp + 0xcc]
add eax, dword [esp + 0x38]
mov ebx, edx
adc ecx, dword [esp + 0x3c]
add eax, 0x3b1696b1
adc ecx, 0x80deb1fe
add dword [esp + 0x40], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x2c]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x28]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x50]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x54]
xor eax, edi
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x28]
and ecx, dword [esp + 0x28]
and esi, dword [esp + 0x30]
mov edi, edx
or edi, dword [esp + 0x2c]
and edx, dword [esp + 0x2c]
and edi, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], eax
mov esi, dword [esp + 0x44]
mov edx, dword [esp + 0x40]
mov edi, edx
mov ebx, esi
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov eax, esi
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x40]
xor eax, ebx
mov ebx, dword [esp + 0x44]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x48]
shr ebx, 0xe
xor eax, edi
mov edi, dword [esp + 0x58]
xor edi, edx
and edi, dword [esp + 0x40]
shl esi, 0x12
or esi, ebx
mov ebx, dword [esp + 0x5c]
xor ecx, esi
mov esi, dword [esp + 0x4c]
xor ebx, esi
and ebx, dword [esp + 0x44]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xd0]
mov edx, dword [esp + 0x3c]
adc ecx, dword [esp + 0xd4]
add eax, dword [esp + 0x20]
mov ebx, edx
adc ecx, dword [esp + 0x24]
add eax, 0x25c71235
adc ecx, 0x9bdc06a7
add dword [esp + 0x30], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x3c]
xor eax, ebx
mov ebx, dword [esp + 0x38]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
or edi, ecx
mov ecx, dword [esp + 0x28]
xor eax, edi
xor esi, edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x38]
and ecx, dword [esp + 0x38]
and esi, dword [esp + 0x50]
mov edi, edx
or edi, dword [esp + 0x3c]
and edx, dword [esp + 0x3c]
and edi, dword [esp + 0x54]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
mov edx, dword [esp + 0x30]
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x34]
adc eax, dword [esp + 0x1c]
mov ebx, esi
mov dword [esp + 0x24], eax
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
mov dword [esp + 0x20], ecx
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x30]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x34]
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x58]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x5c]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x40]
mov ebx, esi
xor ebx, dword [esp + 0x44]
and edi, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xd8]
adc ecx, dword [esp + 0xdc]
add eax, dword [esp + 0x48]
adc ecx, dword [esp + 0x4c]
add eax, 0xcf692694
adc ecx, 0xc19bf174
add dword [esp + 0x50], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x20]
mov eax, ecx
xor esi, esi
shl eax, 4
mov edi, ecx
mov edx, dword [esp + 0x24]
mov ebx, edx
shrd edi, ebx, 0x1c
or esi, edi
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x24]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x20]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x38]
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x14], esi
mov esi, ecx
or esi, dword [esp + 0x20]
and ecx, dword [esp + 0x20]
and esi, dword [esp + 0x28]
mov edi, edx
or edi, dword [esp + 0x24]
and edx, dword [esp + 0x24]
and edi, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x14]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xd0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov edx, eax
xor esi, esi
or esi, edi
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
or edx, ebx
add eax, eax
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xd0]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xd4]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
shr ecx, 6
xor esi, eax
mov eax, dword [esp + 0x68]
xor edx, ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], esi
mov edx, eax
xor esi, esi
shl edx, 0x18
mov edi, eax
mov ecx, dword [esp + 0x6c]
mov ebx, ecx
shrd edi, ebx, 8
or esi, edi
shr ebx, 8
or edx, ebx
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x6c]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x68]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0x14]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x10]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xa8]
mov esi, dword [esp + 0x54]
adc ecx, dword [esp + 0xac]
add dword [esp + 0x60], eax
mov edx, dword [esp + 0x50]
mov ebx, esi
adc dword [esp + 0x64], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x50]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x54]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x40]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x44]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x30]
mov ebx, esi
xor ebx, dword [esp + 0x34]
and edi, dword [esp + 0x50]
and ebx, dword [esp + 0x54]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x60]
adc ecx, dword [esp + 0x64]
add eax, dword [esp + 0x58]
adc ecx, dword [esp + 0x5c]
add eax, 0x9ef14ad2
adc ecx, 0xe49b69c1
add dword [esp + 0x28], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
adc dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
mov edi, ecx
mov ebx, edx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shl eax, 4
shr ebx, 0x1c
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x4c]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x48]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x20]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x48]
and ecx, dword [esp + 0x48]
and esi, dword [esp + 0x38]
mov edi, edx
or edi, dword [esp + 0x4c]
and edx, dword [esp + 0x4c]
and edi, dword [esp + 0x3c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xd8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov edx, eax
xor esi, esi
or esi, edi
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
shl edx, 0xd
add eax, eax
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xdc]
or edi, eax
mov eax, dword [esp + 0xd8]
shrd eax, ecx, 6
xor esi, edi
xor esi, eax
xor edx, ebx
shr ecx, 6
mov dword [esp + 0x10], esi
xor edx, ecx
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
xor esi, esi
or esi, edi
shr ebx, 8
mov edi, eax
shl edi, 0x1f
mov dword [esp + 0x14], edx
mov edx, eax
shrd eax, ecx, 1
shr ecx, 1
or edi, ecx
mov ecx, dword [esp + 0x74]
shl edx, 0x18
or edx, ebx
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x70]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xb0]
mov esi, dword [esp + 0x2c]
adc ecx, dword [esp + 0xb4]
add dword [esp + 0x68], eax
mov edx, dword [esp + 0x28]
mov ebx, esi
adc dword [esp + 0x6c], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x28]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x2c]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x30]
shl esi, 0x12
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x34]
mov edi, edx
xor edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x54]
and edi, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x68]
adc ecx, dword [esp + 0x6c]
add eax, dword [esp + 0x40]
adc ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x5c]
add eax, 0x384f25e3
adc ecx, 0xefbe4786
add dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
mov ebx, edx
adc dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov edi, ecx
shrd edi, ebx, 0x1c
shr ebx, 0x1c
xor esi, esi
or esi, edi
mov dword [esp + 0x18], eax
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x58]
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x5c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shl ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x48]
xor eax, edi
shr edx, 7
or edx, ebx
mov ebx, dword [esp + 0x5c]
xor esi, edx
mov edx, dword [esp + 0x4c]
or ebx, edx
and ebx, dword [esp + 0x24]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x58]
mov edi, esi
or edi, ecx
and edi, dword [esp + 0x20]
and esi, ecx
mov ecx, dword [esp + 0x5c]
and ecx, edx
or ebx, ecx
mov ecx, dword [esp + 0x10]
or edi, esi
add ecx, edi
adc eax, ebx
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x78]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
xor ebx, ebx
shl edi, 0x1f
shr ecx, 1
or ebx, eax
mov eax, dword [esp + 0x78]
or edi, ecx
xor esi, ebx
xor edx, edi
mov ecx, dword [esp + 0x7c]
shrd eax, ecx, 7
xor esi, eax
mov eax, dword [esp + 0x60]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x64]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x64]
add eax, eax
or edi, eax
mov eax, dword [esp + 0x60]
xor esi, edi
shrd eax, ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xb8]
mov esi, dword [esp + 0x3c]
adc ecx, dword [esp + 0xbc]
add dword [esp + 0x70], eax
mov edx, dword [esp + 0x38]
mov ebx, esi
adc dword [esp + 0x74], ecx
mov edi, edx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x38]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x3c]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shr ebx, 0xe
shl esi, 0x12
or edi, edx
mov edx, dword [esp + 0x50]
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x54]
mov edi, edx
xor edi, dword [esp + 0x28]
mov ebx, esi
xor ebx, dword [esp + 0x2c]
and edi, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x70]
mov edx, dword [esp + 0x44]
adc ecx, dword [esp + 0x74]
add eax, dword [esp + 0x30]
mov ebx, edx
adc ecx, dword [esp + 0x34]
add eax, 0x8b8cd5b5
adc ecx, 0xfc19dc6
add dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x40]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x44]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x58]
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x5c]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x40]
and ecx, dword [esp + 0x40]
and esi, dword [esp + 0x48]
mov edi, edx
or edi, dword [esp + 0x44]
and edx, dword [esp + 0x44]
and edi, dword [esp + 0x4c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x80]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
shr ebx, 8
or esi, edi
shl edx, 0x18
mov edi, eax
or edx, ebx
xor ebx, ebx
shl edi, 0x1f
shrd eax, ecx, 1
or ebx, eax
mov eax, dword [esp + 0x80]
shr ecx, 1
or edi, ecx
mov ecx, dword [esp + 0x84]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x68]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x6c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0x68]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x6c]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xc0]
mov esi, dword [esp + 0x24]
adc ecx, dword [esp + 0xc4]
add dword [esp + 0x78], eax
mov edx, dword [esp + 0x20]
mov ebx, esi
adc dword [esp + 0x7c], ecx
mov edi, edx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x20]
shr esi, 0x12
shl edi, 0xe
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x24]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shl esi, 0x12
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x28]
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x2c]
mov edi, edx
xor edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x3c]
and edi, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x78]
mov edx, dword [esp + 0x34]
adc ecx, dword [esp + 0x7c]
add eax, dword [esp + 0x50]
mov ebx, edx
adc ecx, dword [esp + 0x54]
add eax, 0x77ac9c65
adc ecx, 0x240ca1cc
add dword [esp + 0x48], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x34]
xor eax, ebx
mov ebx, dword [esp + 0x30]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x40]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x44]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x30]
and ecx, dword [esp + 0x30]
and esi, dword [esp + 0x58]
mov edi, edx
or edi, dword [esp + 0x34]
and edx, dword [esp + 0x34]
and edi, dword [esp + 0x5c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x88]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
shl edx, 0x18
shr ebx, 8
or esi, edi
or edx, ebx
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x8c]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x88]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x70]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x74]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0x70]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x74]
shrd eax, ecx, 6
xor esi, edi
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x4c]
adc ecx, edx
add eax, dword [esp + 0xc8]
mov edx, dword [esp + 0x48]
adc ecx, dword [esp + 0xcc]
add dword [esp + 0x80], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0x84], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shr esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x48]
shl edi, 0xe
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x4c]
mov esi, edx
xor ecx, edi
xor edi, edi
shl esi, 0x12
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x38]
xor eax, edi
shr ebx, 0xe
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x3c]
mov edi, edx
xor edi, dword [esp + 0x20]
mov ebx, esi
xor ebx, dword [esp + 0x24]
and edi, dword [esp + 0x48]
and ebx, dword [esp + 0x4c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x80]
mov edx, dword [esp + 0x54]
adc ecx, dword [esp + 0x84]
add eax, dword [esp + 0x28]
mov ebx, edx
adc ecx, dword [esp + 0x2c]
add eax, 0x592b0275
adc ecx, 0x2de92c6f
add dword [esp + 0x58], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x50]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
shr ebx, 0x1c
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x54]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x50]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x30]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x34]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x50]
and ecx, dword [esp + 0x50]
and esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x54]
and edx, dword [esp + 0x54]
and edi, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x90]
mov edx, eax
xor esi, esi
mov ecx, dword [esp + 0x94]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shr ecx, 1
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x94]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x90]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x78]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x7c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x78]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x7c]
shrd eax, ecx, 6
xor esi, edi
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x5c]
adc ecx, edx
add eax, dword [esp + 0xd0]
mov edx, dword [esp + 0x58]
adc ecx, dword [esp + 0xd4]
add dword [esp + 0x88], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0x8c], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shl edi, 0xe
shr esi, 0x12
or ebx, edx
or edi, esi
xor eax, ebx
xor ecx, edi
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x5c]
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x20]
xor eax, edi
shr ebx, 0xe
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x24]
mov edi, edx
xor edi, dword [esp + 0x48]
mov ebx, esi
xor ebx, dword [esp + 0x4c]
and edi, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x88]
mov edx, dword [esp + 0x2c]
adc ecx, dword [esp + 0x8c]
add eax, dword [esp + 0x38]
mov ebx, edx
adc ecx, dword [esp + 0x3c]
add eax, 0x6ea6e483
adc ecx, 0x4a7484aa
add dword [esp + 0x40], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x2c]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x28]
mov edx, ecx
xor esi, edi
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x50]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], esi
xor eax, edi
mov esi, ecx
or esi, dword [esp + 0x28]
and ecx, dword [esp + 0x28]
and esi, dword [esp + 0x30]
mov edi, edx
or edi, dword [esp + 0x2c]
and edx, dword [esp + 0x2c]
and edi, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x98]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shr ecx, 1
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x9c]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x98]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x80]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x84]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x80]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x84]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x44]
adc ecx, edx
add eax, dword [esp + 0xd8]
mov edx, dword [esp + 0x40]
adc ecx, dword [esp + 0xdc]
add dword [esp + 0x90], eax
mov edi, edx
mov ebx, esi
adc dword [esp + 0x94], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
xor ecx, ecx
or eax, edi
or ecx, ebx
mov edi, edx
xor ebx, ebx
shl edi, 0xe
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x40]
xor eax, ebx
mov ebx, dword [esp + 0x44]
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x48]
xor eax, edi
mov edi, dword [esp + 0x58]
shr ebx, 0xe
xor edi, edx
and edi, dword [esp + 0x40]
shl esi, 0x12
or esi, ebx
mov ebx, dword [esp + 0x5c]
xor ecx, esi
mov esi, dword [esp + 0x4c]
xor ebx, esi
and ebx, dword [esp + 0x44]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x90]
mov edx, dword [esp + 0x3c]
adc ecx, dword [esp + 0x94]
add eax, dword [esp + 0x20]
mov ebx, edx
adc ecx, dword [esp + 0x24]
add eax, 0xbd41fbd4
adc ecx, 0x5cb0a9dc
add dword [esp + 0x30], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x3c]
xor eax, ebx
mov ebx, dword [esp + 0x38]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x28]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x2c]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x38]
and ecx, dword [esp + 0x38]
and esi, dword [esp + 0x50]
mov edi, edx
or edi, dword [esp + 0x3c]
and edi, dword [esp + 0x54]
and edx, dword [esp + 0x3c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xa0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xa0]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xa4]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x88]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x8c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
add eax, eax
shl edx, 0xd
shr ebx, 0x13
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x88]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x8c]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x34]
adc ecx, edx
add eax, dword [esp + 0x60]
mov edx, dword [esp + 0x30]
adc ecx, dword [esp + 0x64]
add dword [esp + 0x98], eax
mov eax, esi
mov edi, edx
adc dword [esp + 0x9c], ecx
mov ebx, esi
shr eax, 9
xor ecx, ecx
shld ebx, edi, 0x17
or ecx, ebx
shl edi, 0x17
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x30]
xor eax, ebx
mov ebx, dword [esp + 0x34]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x58]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x5c]
mov edi, edx
xor edi, dword [esp + 0x40]
mov ebx, esi
xor ebx, dword [esp + 0x44]
and edi, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x98]
mov edx, dword [esp + 0x24]
adc ecx, dword [esp + 0x9c]
add eax, dword [esp + 0x48]
mov ebx, edx
adc ecx, dword [esp + 0x4c]
add eax, 0x831153b5
adc ecx, 0x76f988da
add dword [esp + 0x50], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x20]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x24]
xor eax, ebx
mov ebx, dword [esp + 0x20]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor edi, edi
xor esi, edx
mov edx, dword [esp + 0x3c]
or edi, ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x10], esi
mov esi, ecx
xor eax, edi
or esi, dword [esp + 0x20]
and ecx, dword [esp + 0x20]
and esi, dword [esp + 0x28]
mov edi, edx
or edi, dword [esp + 0x24]
and edx, dword [esp + 0x24]
and edi, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xa8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xa8]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xac]
shrd eax, ecx, 7
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x90]
xor edx, edi
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x94]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
add eax, eax
shl edx, 0xd
shr ebx, 0x13
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x90]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x94]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x54]
adc ecx, edx
add eax, dword [esp + 0x68]
adc ecx, dword [esp + 0x6c]
add dword [esp + 0xa0], eax
mov eax, esi
adc dword [esp + 0xa4], ecx
mov edx, dword [esp + 0x50]
mov ebx, esi
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x50]
xor eax, ebx
mov ebx, dword [esp + 0x54]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x40]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x44]
mov edi, edx
xor edi, dword [esp + 0x30]
mov ebx, esi
xor ebx, dword [esp + 0x34]
and edi, dword [esp + 0x50]
and ebx, dword [esp + 0x54]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xa0]
mov edx, dword [esp + 0x4c]
adc ecx, dword [esp + 0xa4]
add eax, dword [esp + 0x58]
mov ebx, edx
adc ecx, dword [esp + 0x5c]
add eax, 0xee66dfab
adc ecx, 0x983e5152
add dword [esp + 0x28], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x48]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x4c]
xor eax, ebx
mov ebx, dword [esp + 0x48]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
or edi, ecx
xor esi, edx
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
and ecx, dword [esp + 0x48]
or esi, dword [esp + 0x48]
mov edi, edx
or edi, dword [esp + 0x4c]
and esi, dword [esp + 0x38]
and edi, dword [esp + 0x3c]
and edx, dword [esp + 0x4c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xb0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xb0]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xb4]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x98]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x9c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
add eax, eax
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x98]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x9c]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x70]
mov esi, dword [esp + 0x2c]
adc ecx, dword [esp + 0x74]
add dword [esp + 0xa8], eax
mov edx, dword [esp + 0x28]
mov ebx, esi
adc dword [esp + 0xac], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
mov eax, esi
shr eax, 9
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x28]
xor eax, ebx
mov ebx, dword [esp + 0x2c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x30]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x34]
mov edi, edx
xor edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x54]
and edi, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor edi, edx
xor ebx, esi
mov edx, dword [esp + 0x5c]
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xa8]
mov ebx, edx
adc ecx, dword [esp + 0xac]
add eax, dword [esp + 0x40]
adc ecx, dword [esp + 0x44]
add eax, 0x2db43210
adc ecx, 0xa831c66d
add dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x5c]
xor ebx, ebx
or ebx, edx
mov edx, ecx
xor esi, edi
xor eax, ebx
shr edx, 7
xor edi, edi
mov ebx, dword [esp + 0x58]
shld ecx, ebx, 0x19
or edi, ecx
mov ecx, dword [esp + 0x48]
xor eax, edi
shl ebx, 0x19
or edx, ebx
mov ebx, dword [esp + 0x5c]
xor esi, edx
mov edx, dword [esp + 0x4c]
or ebx, edx
and ebx, dword [esp + 0x24]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x58]
mov edi, esi
or edi, ecx
and edi, dword [esp + 0x20]
and esi, ecx
mov ecx, dword [esp + 0x5c]
and ecx, edx
or ebx, ecx
mov ecx, dword [esp + 0x10]
or edi, esi
add ecx, edi
adc eax, ebx
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xb8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xb8]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xbc]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0xa0]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xa4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or edi, eax
mov eax, dword [esp + 0xa0]
or ebx, ecx
mov ecx, dword [esp + 0xa4]
xor esi, edi
xor edx, ebx
shrd eax, ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x78]
mov esi, dword [esp + 0x3c]
adc ecx, dword [esp + 0x7c]
add dword [esp + 0xb0], eax
mov edx, dword [esp + 0x38]
mov ebx, esi
adc dword [esp + 0xb4], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x38]
xor eax, ebx
mov ebx, dword [esp + 0x3c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x50]
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x54]
mov edi, edx
xor edi, dword [esp + 0x28]
mov ebx, esi
xor ebx, dword [esp + 0x2c]
and edi, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor edi, edx
mov edx, dword [esp + 0x44]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xb0]
mov ebx, edx
adc ecx, dword [esp + 0xb4]
add eax, dword [esp + 0x30]
adc ecx, dword [esp + 0x34]
add eax, 0x98fb213f
adc ecx, 0xb00327c8
add dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shr ebx, 0x1c
shl eax, 4
shld edx, ecx, 0x1e
or eax, ebx
shr edi, 2
xor ebx, ebx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x44]
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x40]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x58]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x40]
and ecx, dword [esp + 0x40]
and esi, dword [esp + 0x48]
mov edi, edx
or edi, dword [esp + 0x44]
and edx, dword [esp + 0x44]
and edi, dword [esp + 0x4c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xc0]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xc4]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xa8]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xac]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
mov dword [esp + 0x14], edx
mov edx, eax
or esi, edi
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
shl edx, 0xd
add eax, eax
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
add eax, eax
or ebx, ecx
or edi, eax
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xac]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x80]
mov esi, dword [esp + 0x24]
adc ecx, dword [esp + 0x84]
add dword [esp + 0xb8], eax
mov edx, dword [esp + 0x20]
mov ebx, esi
adc dword [esp + 0xbc], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x20]
xor eax, ebx
mov ebx, dword [esp + 0x24]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x28]
shl esi, 0x12
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x2c]
mov edi, edx
xor edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x3c]
and edi, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor edi, edx
mov edx, dword [esp + 0x34]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xb8]
mov ebx, edx
adc ecx, dword [esp + 0xbc]
add eax, dword [esp + 0x50]
adc ecx, dword [esp + 0x54]
add eax, 0xbeef0ee4
adc ecx, 0xbf597fc7
add dword [esp + 0x48], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov edi, ecx
shrd edi, ebx, 0x1c
mov eax, ecx
xor esi, esi
shl eax, 4
shr ebx, 0x1c
or esi, edi
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x30]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x34]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x40]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x30]
and ecx, dword [esp + 0x30]
and esi, dword [esp + 0x58]
mov edi, edx
or edi, dword [esp + 0x34]
and edx, dword [esp + 0x34]
and edi, dword [esp + 0x5c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xc8]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xc8]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xcc]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
shr ecx, 7
xor esi, eax
mov eax, dword [esp + 0xb0]
xor edx, ecx
mov ecx, dword [esp + 0xb4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
mov edx, eax
xor esi, esi
shl edx, 0xd
shr ebx, 0x13
or esi, edi
or edx, ebx
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xb4]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0xb0]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x88]
mov esi, dword [esp + 0x4c]
adc ecx, dword [esp + 0x8c]
add dword [esp + 0xc0], eax
mov edx, dword [esp + 0x48]
mov ebx, esi
adc dword [esp + 0xc4], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x48]
xor eax, ebx
mov ebx, dword [esp + 0x4c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
shl esi, 0x12
or esi, ebx
or edi, edx
mov edx, dword [esp + 0x38]
xor ecx, esi
mov esi, dword [esp + 0x3c]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x20]
mov ebx, esi
xor ebx, dword [esp + 0x24]
and edi, dword [esp + 0x48]
and ebx, dword [esp + 0x4c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xc0]
adc ecx, dword [esp + 0xc4]
add eax, dword [esp + 0x28]
adc ecx, dword [esp + 0x2c]
add eax, 0x3da88fc2
adc ecx, 0xc6e00bf3
add dword [esp + 0x58], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x50]
mov eax, ecx
xor esi, esi
shl eax, 4
mov edx, dword [esp + 0x54]
mov edi, ecx
mov ebx, edx
shrd edi, ebx, 0x1c
or esi, edi
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x54]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x50]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x30]
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x50]
and ecx, dword [esp + 0x50]
and esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x54]
and edx, dword [esp + 0x54]
and edi, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xd0]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xd4]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xd0]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
shr ecx, 7
xor esi, eax
mov eax, dword [esp + 0xb8]
xor edx, ecx
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
mov edx, eax
xor esi, esi
shl edx, 0xd
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
or esi, edi
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xbc]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0xb8]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x90]
mov esi, dword [esp + 0x5c]
adc ecx, dword [esp + 0x94]
add dword [esp + 0xc8], eax
mov edx, dword [esp + 0x58]
mov ebx, esi
adc dword [esp + 0xcc], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x58]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x5c]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x20]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x24]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x48]
mov ebx, esi
xor ebx, dword [esp + 0x4c]
and edi, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xc8]
adc ecx, dword [esp + 0xcc]
add eax, dword [esp + 0x38]
adc ecx, dword [esp + 0x3c]
add eax, 0x930aa725
adc ecx, 0xd5a79147
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
add dword [esp + 0x40], eax
mov edx, dword [esp + 0x2c]
mov ebx, edx
adc dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x2c]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x28]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x50]
shr edx, 7
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x28]
and ecx, dword [esp + 0x28]
and esi, dword [esp + 0x30]
mov edi, edx
or edi, dword [esp + 0x2c]
and edx, dword [esp + 0x2c]
and edi, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xd8]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xdc]
or ebx, eax
mov eax, dword [esp + 0xd8]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
shr ecx, 7
xor esi, eax
xor edx, ecx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + 0xc4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
xor esi, esi
or esi, edi
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
add eax, eax
shr edi, 0x1d
shl edx, 0xd
or edx, ebx
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xc4]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0xc0]
xor esi, edi
shrd eax, ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x98]
mov esi, dword [esp + 0x44]
adc ecx, dword [esp + 0x9c]
add dword [esp + 0xd0], eax
mov edx, dword [esp + 0x40]
mov ebx, esi
adc dword [esp + 0xd4], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x40]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x44]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
xor edi, edi
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x48]
shl esi, 0x12
or esi, ebx
mov ebx, dword [esp + 0x5c]
xor eax, edi
mov edi, dword [esp + 0x58]
xor ecx, esi
mov esi, dword [esp + 0x4c]
xor edi, edx
and edi, dword [esp + 0x40]
xor ebx, esi
and ebx, dword [esp + 0x44]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xd0]
adc ecx, dword [esp + 0xd4]
add eax, dword [esp + 0x20]
mov edx, dword [esp + 0x3c]
adc ecx, dword [esp + 0x24]
add eax, 0xe003826f
adc ecx, 0x6ca6351
add dword [esp + 0x30], eax
mov dword [esp + 0x1c], ecx
mov ebx, edx
adc dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov dword [esp + 0x18], eax
mov eax, ecx
shr ebx, 0x1c
shl eax, 4
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x38]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x3c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x28]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x38]
and ecx, dword [esp + 0x38]
and esi, dword [esp + 0x50]
mov edi, edx
or edi, dword [esp + 0x3c]
and edx, dword [esp + 0x3c]
and edi, dword [esp + 0x54]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xc8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
xor esi, esi
or esi, edi
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
shl edx, 0xd
add eax, eax
or edx, ebx
shr edi, 0x1d
add eax, eax
xor ebx, ebx
or edi, eax
or ebx, ecx
xor esi, edi
xor edx, ebx
mov eax, dword [esp + 0xc8]
mov ecx, dword [esp + 0xcc]
shrd eax, ecx, 6
xor esi, eax
mov eax, dword [esp + 0x60]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x64]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
shr ebx, 8
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shl edi, 0x1f
shl edx, 0x18
or edx, ebx
shr ecx, 1
or edi, ecx
mov ecx, dword [esp + 0x64]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x60]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xa0]
mov esi, dword [esp + 0x34]
adc ecx, dword [esp + 0xa4]
add dword [esp + 0xd8], eax
mov edx, dword [esp + 0x30]
mov ebx, esi
adc dword [esp + 0xdc], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x30]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x34]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shr ebx, 0xe
shl esi, 0x12
or edi, edx
mov edx, dword [esp + 0x58]
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x5c]
mov edi, edx
xor edi, dword [esp + 0x40]
mov ebx, esi
xor ebx, dword [esp + 0x44]
and edi, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xd8]
mov edx, dword [esp + 0x24]
adc ecx, dword [esp + 0xdc]
add eax, dword [esp + 0x48]
mov ebx, edx
adc ecx, dword [esp + 0x4c]
add eax, 0xa0e6e70
adc ecx, 0x14292967
add dword [esp + 0x50], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x20]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x20]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x24]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x38]
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x3c]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x20]
and ecx, dword [esp + 0x20]
and esi, dword [esp + 0x28]
mov edi, edx
or edi, dword [esp + 0x24]
and edx, dword [esp + 0x24]
and edi, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xd0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
xor esi, esi
or esi, edi
mov edx, eax
mov edi, ecx
shr ebx, 0x13
shl edx, 0xd
shld ecx, eax, 3
or edx, ebx
shr edi, 0x1d
xor ebx, ebx
add eax, eax
or ebx, ecx
mov ecx, dword [esp + 0xd4]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0xd0]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x68]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x6c]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
shr ecx, 1
or edi, ecx
mov ecx, dword [esp + 0x6c]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x68]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xa8]
mov esi, dword [esp + 0x54]
adc ecx, dword [esp + 0xac]
add dword [esp + 0x60], eax
mov edx, dword [esp + 0x50]
mov ebx, esi
adc dword [esp + 0x64], ecx
mov edi, edx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x50]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x54]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x40]
shl esi, 0x12
shr ebx, 0xe
or esi, ebx
xor eax, edi
xor ecx, esi
mov edi, edx
xor edi, dword [esp + 0x30]
mov esi, dword [esp + 0x44]
and edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x34]
xor edi, edx
and ebx, dword [esp + 0x54]
mov edx, dword [esp + 0x4c]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x60]
mov ebx, edx
adc ecx, dword [esp + 0x64]
add eax, dword [esp + 0x58]
adc ecx, dword [esp + 0x5c]
add eax, 0x46d22ffc
adc ecx, 0x27b70a85
add dword [esp + 0x28], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x48]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x4c]
xor eax, ebx
mov ebx, dword [esp + 0x48]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x20]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x24]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x48]
and ecx, dword [esp + 0x48]
and esi, dword [esp + 0x38]
mov edi, edx
or edi, dword [esp + 0x4c]
and edx, dword [esp + 0x4c]
and edi, dword [esp + 0x3c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xd8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov edx, eax
xor esi, esi
shl edx, 0xd
shr ebx, 0x13
or esi, edi
or edx, ebx
mov edi, ecx
shld ecx, eax, 3
add eax, eax
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xdc]
add eax, eax
or edi, eax
mov eax, dword [esp + 0xd8]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x70]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x74]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x74]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x70]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x2c]
adc ecx, edx
add eax, dword [esp + 0xb0]
mov edx, dword [esp + 0x28]
adc ecx, dword [esp + 0xb4]
add dword [esp + 0x68], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0x6c], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x28]
shr esi, 0x12
shl edi, 0xe
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x2c]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shl esi, 0x12
shr ebx, 0xe
or esi, ebx
or edi, edx
mov edx, dword [esp + 0x30]
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x34]
mov edi, edx
xor edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x54]
and edi, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x68]
mov edx, dword [esp + 0x5c]
adc ecx, dword [esp + 0x6c]
add eax, dword [esp + 0x40]
mov ebx, edx
adc ecx, dword [esp + 0x44]
add eax, 0x5c26c926
adc ecx, 0x2e1b2138
add dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov edi, ecx
shrd edi, ebx, 0x1c
mov eax, ecx
xor esi, esi
or esi, edi
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x5c]
xor eax, ebx
mov ebx, dword [esp + 0x58]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shl ebx, 0x19
shr edx, 7
or edx, ebx
mov ebx, dword [esp + 0x5c]
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x48]
xor esi, edx
mov edx, dword [esp + 0x4c]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x58]
or ebx, edx
and ebx, dword [esp + 0x24]
mov edi, esi
or edi, ecx
and edi, dword [esp + 0x20]
and esi, ecx
mov ecx, dword [esp + 0x5c]
and ecx, edx
or ebx, ecx
mov ecx, dword [esp + 0x10]
or edi, esi
add ecx, edi
adc eax, ebx
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x78]
mov edx, eax
mov ecx, dword [esp + 0x7c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shr ecx, 1
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x7c]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x78]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x60]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x64]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0x60]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x64]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x3c]
adc ecx, edx
add eax, dword [esp + 0xb8]
mov edx, dword [esp + 0x38]
adc ecx, dword [esp + 0xbc]
add dword [esp + 0x70], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0x74], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shl edi, 0xe
shr esi, 0x12
or ebx, edx
or edi, esi
xor eax, ebx
mov edx, dword [esp + 0x38]
mov ebx, dword [esp + 0x3c]
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x50]
xor eax, edi
shr ebx, 0xe
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x54]
mov edi, edx
xor edi, dword [esp + 0x28]
mov ebx, esi
xor ebx, dword [esp + 0x2c]
and edi, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x70]
mov edx, dword [esp + 0x44]
adc ecx, dword [esp + 0x74]
add eax, dword [esp + 0x30]
mov ebx, edx
adc ecx, dword [esp + 0x34]
add eax, 0x5ac42aed
adc ecx, 0x4d2c6dfc
add dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x44]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x40]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x58]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x10], esi
xor eax, edi
mov esi, ecx
or esi, dword [esp + 0x40]
and ecx, dword [esp + 0x40]
and esi, dword [esp + 0x48]
mov edi, edx
or edi, dword [esp + 0x44]
and edx, dword [esp + 0x44]
and edi, dword [esp + 0x4c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x80]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x84]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x80]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x68]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x6c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
add eax, eax
shr ebx, 0x13
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x68]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x6c]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x24]
adc ecx, edx
add eax, dword [esp + 0xc0]
mov edx, dword [esp + 0x20]
adc ecx, dword [esp + 0xc4]
add dword [esp + 0x78], eax
mov edi, edx
mov ebx, esi
adc dword [esp + 0x7c], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
xor ecx, ecx
or eax, edi
or ecx, ebx
mov edi, edx
xor ebx, ebx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x20]
xor eax, ebx
mov ebx, dword [esp + 0x24]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x28]
xor eax, edi
shr ebx, 0xe
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x2c]
mov edi, edx
xor edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x3c]
and edi, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x78]
mov edx, dword [esp + 0x34]
adc ecx, dword [esp + 0x7c]
add eax, dword [esp + 0x50]
mov ebx, edx
adc ecx, dword [esp + 0x54]
add eax, 0x9d95b3df
adc ecx, 0x53380d13
add dword [esp + 0x48], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x34]
xor eax, ebx
mov ebx, dword [esp + 0x30]
mov edx, ecx
xor esi, edi
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
shl ebx, 0x19
or edi, ecx
mov ecx, dword [esp + 0x40]
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x44]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x30]
mov edi, edx
or edi, dword [esp + 0x34]
and esi, dword [esp + 0x58]
and edi, dword [esp + 0x5c]
and ecx, dword [esp + 0x30]
and edx, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x88]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x88]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x8c]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x70]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x74]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
add eax, eax
shl edx, 0xd
shr ebx, 0x13
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x70]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x74]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x4c]
adc ecx, edx
add eax, dword [esp + 0xc8]
mov edx, dword [esp + 0x48]
adc ecx, dword [esp + 0xcc]
add dword [esp + 0x80], eax
mov eax, esi
mov edi, edx
adc dword [esp + 0x84], ecx
shr eax, 9
xor ecx, ecx
mov ebx, esi
shld ebx, edi, 0x17
or ecx, ebx
shl edi, 0x17
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x48]
xor eax, ebx
mov ebx, dword [esp + 0x4c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x38]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x3c]
mov edi, edx
xor edi, dword [esp + 0x20]
mov ebx, esi
xor ebx, dword [esp + 0x24]
and edi, dword [esp + 0x48]
and ebx, dword [esp + 0x4c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x80]
mov edx, dword [esp + 0x54]
adc ecx, dword [esp + 0x84]
add eax, dword [esp + 0x28]
mov ebx, edx
adc ecx, dword [esp + 0x2c]
add eax, 0x8baf63de
adc ecx, 0x650a7354
add dword [esp + 0x58], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x50]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x54]
xor eax, ebx
mov ebx, dword [esp + 0x50]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
or edi, ecx
mov ecx, dword [esp + 0x30]
xor esi, edx
mov dword [esp + 0x10], esi
mov esi, ecx
xor eax, edi
or esi, dword [esp + 0x50]
and ecx, dword [esp + 0x50]
and esi, dword [esp + 0x40]
mov edx, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x10]
mov edi, edx
or edi, dword [esp + 0x54]
and edx, dword [esp + 0x54]
and edi, dword [esp + 0x44]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x90]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x90]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x94]
shrd eax, ecx, 7
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x78]
xor edx, edi
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x7c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
add eax, eax
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x78]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x7c]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x5c]
adc ecx, edx
add eax, dword [esp + 0xd0]
adc ecx, dword [esp + 0xd4]
add dword [esp + 0x88], eax
adc dword [esp + 0x8c], ecx
mov edx, dword [esp + 0x58]
mov edi, edx
mov ebx, esi
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov eax, esi
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x58]
xor eax, ebx
mov ebx, dword [esp + 0x5c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x20]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x24]
mov edi, edx
xor edi, dword [esp + 0x48]
mov ebx, esi
xor ebx, dword [esp + 0x4c]
and edi, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x88]
mov edx, dword [esp + 0x2c]
adc ecx, dword [esp + 0x8c]
add eax, dword [esp + 0x38]
mov ebx, edx
adc ecx, dword [esp + 0x3c]
add eax, 0x3c77b2a8
adc ecx, 0x766a0abb
add dword [esp + 0x40], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x2c]
xor eax, ebx
mov ebx, dword [esp + 0x28]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
or edi, ecx
mov ecx, dword [esp + 0x50]
xor esi, edx
mov edx, dword [esp + 0x54]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
and ecx, dword [esp + 0x28]
or esi, dword [esp + 0x28]
mov edi, edx
or edi, dword [esp + 0x2c]
and esi, dword [esp + 0x30]
and edi, dword [esp + 0x34]
and edx, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x98]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x98]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x9c]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x80]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x84]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], edx
mov edx, eax
xor esi, esi
or esi, edi
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
add eax, eax
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x80]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x84]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xd8]
mov esi, dword [esp + 0x44]
adc ecx, dword [esp + 0xdc]
add dword [esp + 0x90], eax
mov edx, dword [esp + 0x40]
mov ebx, esi
adc dword [esp + 0x94], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
mov eax, esi
shr eax, 9
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x40]
xor eax, ebx
mov ebx, dword [esp + 0x44]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x48]
shr ebx, 0xe
xor eax, edi
mov edi, dword [esp + 0x58]
shl esi, 0x12
or esi, ebx
mov ebx, dword [esp + 0x5c]
xor ecx, esi
mov esi, dword [esp + 0x4c]
xor edi, edx
and edi, dword [esp + 0x40]
xor ebx, esi
and ebx, dword [esp + 0x44]
xor edi, edx
xor ebx, esi
mov edx, dword [esp + 0x3c]
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x90]
mov ebx, edx
adc ecx, dword [esp + 0x94]
add eax, dword [esp + 0x20]
adc ecx, dword [esp + 0x24]
add eax, 0x47edaee6
adc ecx, 0x81c2c92e
add dword [esp + 0x30], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x3c]
xor ebx, ebx
or ebx, edx
mov edx, ecx
xor esi, edi
xor eax, ebx
shr edx, 7
mov ebx, dword [esp + 0x38]
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x28]
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x38]
and ecx, dword [esp + 0x38]
and esi, dword [esp + 0x50]
mov edi, edx
or edi, dword [esp + 0x3c]
and edx, dword [esp + 0x3c]
and edi, dword [esp + 0x54]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xa0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xa0]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xa4]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x88]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x8c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
shl edx, 0xd
or edx, ebx
add eax, eax
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or edi, eax
mov eax, dword [esp + 0x88]
or ebx, ecx
mov ecx, dword [esp + 0x8c]
xor esi, edi
xor edx, ebx
shrd eax, ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x60]
mov esi, dword [esp + 0x34]
adc ecx, dword [esp + 0x64]
add dword [esp + 0x98], eax
mov edx, dword [esp + 0x30]
mov ebx, esi
adc dword [esp + 0x9c], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
mov eax, esi
shr eax, 9
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x30]
xor eax, ebx
mov ebx, dword [esp + 0x34]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x58]
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x5c]
mov edi, edx
xor edi, dword [esp + 0x40]
mov ebx, esi
xor ebx, dword [esp + 0x44]
and edi, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor edi, edx
mov edx, dword [esp + 0x24]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x98]
mov ebx, edx
adc ecx, dword [esp + 0x9c]
add eax, dword [esp + 0x48]
adc ecx, dword [esp + 0x4c]
add eax, 0x1482353b
adc ecx, 0x92722c85
add dword [esp + 0x50], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x20]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
xor ebx, ebx
or edi, ecx
mov ecx, dword [esp + 0x24]
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x20]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x38]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x20]
and ecx, dword [esp + 0x20]
and esi, dword [esp + 0x28]
mov edi, edx
or edi, dword [esp + 0x24]
and edx, dword [esp + 0x24]
and edi, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xa8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xa8]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xac]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x90]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x94]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
mov dword [esp + 0x14], edx
mov edx, eax
or esi, edi
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
shl edx, 0xd
add eax, eax
or edx, ebx
shr edi, 0x1d
add eax, eax
xor ebx, ebx
or edi, eax
or ebx, ecx
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x94]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x68]
mov esi, dword [esp + 0x54]
adc ecx, dword [esp + 0x6c]
add dword [esp + 0xa0], eax
mov edx, dword [esp + 0x50]
mov ebx, esi
adc dword [esp + 0xa4], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x50]
xor eax, ebx
mov ebx, dword [esp + 0x54]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x40]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x44]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x30]
mov ebx, esi
xor ebx, dword [esp + 0x34]
and edi, dword [esp + 0x50]
and ebx, dword [esp + 0x54]
xor edi, edx
mov edx, dword [esp + 0x4c]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xa0]
mov ebx, edx
adc ecx, dword [esp + 0xa4]
add eax, dword [esp + 0x58]
adc ecx, dword [esp + 0x5c]
add eax, 0x4cf10364
adc ecx, 0xa2bfe8a1
add dword [esp + 0x28], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x48]
mov edi, ecx
shrd edi, ebx, 0x1c
mov eax, ecx
xor esi, esi
shl eax, 4
shr ebx, 0x1c
or esi, edi
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x48]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x4c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x20]
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x48]
and ecx, dword [esp + 0x48]
and esi, dword [esp + 0x38]
mov edi, edx
or edi, dword [esp + 0x4c]
and edx, dword [esp + 0x4c]
and edi, dword [esp + 0x3c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xb0]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xb0]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xb4]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x9c]
xor esi, eax
mov eax, dword [esp + 0x98]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
xor esi, esi
mov edx, eax
shl edx, 0xd
shr ebx, 0x13
or esi, edi
mov edi, ecx
or edx, ebx
shr edi, 0x1d
shld ecx, eax, 3
add eax, eax
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x9c]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0x98]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x70]
mov esi, dword [esp + 0x2c]
adc ecx, dword [esp + 0x74]
add dword [esp + 0xa8], eax
mov edx, dword [esp + 0x28]
mov ebx, esi
adc dword [esp + 0xac], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x28]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x2c]
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x30]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x34]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x54]
and edi, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xa8]
adc ecx, dword [esp + 0xac]
add eax, dword [esp + 0x40]
adc ecx, dword [esp + 0x44]
add eax, 0xbc423001
adc ecx, 0xa81a664b
add dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov eax, ecx
xor esi, esi
shl eax, 4
mov edi, ecx
mov edx, dword [esp + 0x5c]
mov ebx, edx
shrd edi, ebx, 0x1c
or esi, edi
shr ebx, 0x1c
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x58]
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x5c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shl ebx, 0x19
shr edx, 7
or edx, ebx
mov ebx, dword [esp + 0x5c]
xor esi, edx
mov edx, dword [esp + 0x4c]
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x48]
xor eax, edi
or ebx, edx
and ebx, dword [esp + 0x24]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x58]
mov edi, esi
or edi, ecx
and edi, dword [esp + 0x20]
and esi, ecx
mov ecx, dword [esp + 0x5c]
and ecx, edx
or ebx, ecx
mov ecx, dword [esp + 0x10]
or edi, esi
add ecx, edi
adc eax, ebx
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xb8]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xbc]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xb8]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
shr ecx, 7
xor esi, eax
mov eax, dword [esp + 0xa0]
xor edx, ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
mov edx, eax
xor esi, esi
shl edx, 0xd
mov edi, eax
mov ecx, dword [esp + 0xa4]
mov ebx, ecx
shrd edi, ebx, 0x13
or esi, edi
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xa4]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0xa0]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x78]
mov esi, dword [esp + 0x3c]
adc ecx, dword [esp + 0x7c]
add dword [esp + 0xb0], eax
mov edx, dword [esp + 0x38]
mov ebx, esi
adc dword [esp + 0xb4], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x38]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x3c]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x50]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x54]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x28]
mov ebx, esi
xor ebx, dword [esp + 0x2c]
and edi, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xb0]
adc ecx, dword [esp + 0xb4]
add eax, dword [esp + 0x30]
adc ecx, dword [esp + 0x34]
add eax, 0xd0f89791
mov dword [esp + 0x18], eax
adc ecx, 0xc24b8b70
add dword [esp + 0x20], eax
mov edx, dword [esp + 0x44]
mov dword [esp + 0x1c], ecx
adc dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov edi, ecx
mov ebx, edx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x44]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x40]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x58]
shr edx, 7
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x40]
and ecx, dword [esp + 0x40]
and esi, dword [esp + 0x48]
mov edi, edx
or edi, dword [esp + 0x44]
and edx, dword [esp + 0x44]
and edi, dword [esp + 0x4c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc0]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xc4]
or ebx, eax
mov eax, dword [esp + 0xc0]
shrd eax, ecx, 7
xor esi, ebx
xor esi, eax
xor edx, edi
shr ecx, 7
mov dword [esp + 0x10], esi
xor edx, ecx
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xac]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
shr ebx, 0x13
add eax, eax
shr edi, 0x1d
shl edx, 0xd
or edx, ebx
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xac]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0xa8]
xor esi, edi
shrd eax, ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x80]
mov esi, dword [esp + 0x24]
adc ecx, dword [esp + 0x84]
add dword [esp + 0xb8], eax
mov edx, dword [esp + 0x20]
mov ebx, esi
adc dword [esp + 0xbc], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x20]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x24]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x28]
shl esi, 0x12
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x2c]
mov edi, edx
xor edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x3c]
and edi, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xb8]
adc ecx, dword [esp + 0xbc]
add eax, dword [esp + 0x50]
mov edx, dword [esp + 0x34]
adc ecx, dword [esp + 0x54]
add eax, 0x654be30
adc ecx, 0xc76c51a3
add dword [esp + 0x48], eax
mov dword [esp + 0x1c], ecx
mov ebx, edx
adc dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov dword [esp + 0x18], eax
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x30]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x34]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x40]
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x44]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x30]
and ecx, dword [esp + 0x30]
and esi, dword [esp + 0x58]
mov edi, edx
or edi, dword [esp + 0x34]
and edx, dword [esp + 0x34]
and edi, dword [esp + 0x5c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xc8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
xor ebx, ebx
shl edi, 0x1f
shr ecx, 1
or ebx, eax
mov eax, dword [esp + 0xc8]
or edi, ecx
xor esi, ebx
xor edx, edi
mov ecx, dword [esp + 0xcc]
shrd eax, ecx, 7
xor esi, eax
mov eax, dword [esp + 0xb0]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xb4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xb4]
add eax, eax
or edi, eax
mov eax, dword [esp + 0xb0]
xor esi, edi
shrd eax, ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x88]
mov esi, dword [esp + 0x4c]
adc ecx, dword [esp + 0x8c]
add dword [esp + 0xc0], eax
mov edx, dword [esp + 0x48]
mov ebx, esi
adc dword [esp + 0xc4], ecx
mov edi, edx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x48]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x4c]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shr ebx, 0xe
shl esi, 0x12
or edi, edx
mov edx, dword [esp + 0x38]
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x3c]
mov edi, edx
xor edi, dword [esp + 0x20]
mov ebx, esi
xor ebx, dword [esp + 0x24]
and edi, dword [esp + 0x48]
and ebx, dword [esp + 0x4c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xc0]
mov edx, dword [esp + 0x54]
adc ecx, dword [esp + 0xc4]
add eax, dword [esp + 0x28]
mov ebx, edx
adc ecx, dword [esp + 0x2c]
add eax, 0xd6ef5218
adc ecx, 0xd192e819
add dword [esp + 0x58], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x50]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x50]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x54]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x30]
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x34]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x50]
and ecx, dword [esp + 0x50]
and esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x54]
and edx, dword [esp + 0x54]
and edi, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xd0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
shr ebx, 8
or esi, edi
shl edx, 0x18
mov edi, eax
or edx, ebx
xor ebx, ebx
shl edi, 0x1f
shrd eax, ecx, 1
or ebx, eax
mov eax, dword [esp + 0xd0]
shr ecx, 1
or edi, ecx
mov ecx, dword [esp + 0xd4]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xb8]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xbc]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0xb8]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xbc]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x90]
mov esi, dword [esp + 0x5c]
adc ecx, dword [esp + 0x94]
add dword [esp + 0xc8], eax
mov edx, dword [esp + 0x58]
mov ebx, esi
adc dword [esp + 0xcc], ecx
mov edi, edx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x58]
shr esi, 0x12
shl edi, 0xe
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x5c]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shl esi, 0x12
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x20]
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x24]
mov edi, edx
xor edi, dword [esp + 0x48]
mov ebx, esi
xor ebx, dword [esp + 0x4c]
and edi, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xc8]
mov edx, dword [esp + 0x2c]
adc ecx, dword [esp + 0xcc]
add eax, dword [esp + 0x38]
mov ebx, edx
adc ecx, dword [esp + 0x3c]
add eax, 0x5565a910
adc ecx, 0xd6990624
add dword [esp + 0x40], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x2c]
xor eax, ebx
mov ebx, dword [esp + 0x28]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x50]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x54]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x28]
and ecx, dword [esp + 0x28]
and esi, dword [esp + 0x30]
mov edi, edx
or edi, dword [esp + 0x2c]
and edx, dword [esp + 0x2c]
and edi, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xd8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
shl edx, 0x18
shr ebx, 8
or esi, edi
or edx, ebx
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xdc]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xd8]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xc0]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xc4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0xc0]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xc4]
shrd eax, ecx, 6
xor esi, edi
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x44]
adc ecx, edx
add eax, dword [esp + 0x98]
mov edx, dword [esp + 0x40]
adc ecx, dword [esp + 0x9c]
add dword [esp + 0xd0], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0xd4], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shr esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x40]
shl edi, 0xe
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x44]
mov esi, edx
xor ecx, edi
xor edi, edi
shl esi, 0x12
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x48]
xor eax, edi
mov edi, dword [esp + 0x58]
xor edi, edx
and edi, dword [esp + 0x40]
shr ebx, 0xe
or esi, ebx
mov ebx, dword [esp + 0x5c]
xor ecx, esi
mov esi, dword [esp + 0x4c]
xor ebx, esi
and ebx, dword [esp + 0x44]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xd0]
mov edx, dword [esp + 0x3c]
adc ecx, dword [esp + 0xd4]
add eax, dword [esp + 0x20]
mov ebx, edx
adc ecx, dword [esp + 0x24]
add eax, 0x5771202a
adc ecx, 0xf40e3585
add dword [esp + 0x30], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
shr ebx, 0x1c
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x3c]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x38]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x28]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x2c]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x38]
and ecx, dword [esp + 0x38]
and esi, dword [esp + 0x50]
mov edi, edx
or edi, dword [esp + 0x3c]
and edx, dword [esp + 0x3c]
and edi, dword [esp + 0x54]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xc8]
mov edx, eax
xor esi, esi
mov ecx, dword [esp + 0xcc]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
or esi, edi
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0xc8]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xcc]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x60]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x64]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, eax
mov dword [esp + 0x14], edx
mov edx, eax
shrd eax, ecx, 1
shr ebx, 8
shr ecx, 1
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x64]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x60]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x34]
adc ecx, edx
add eax, dword [esp + 0xa0]
mov edx, dword [esp + 0x30]
adc ecx, dword [esp + 0xa4]
add dword [esp + 0xd8], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0xdc], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shl edi, 0xe
shr esi, 0x12
or ebx, edx
or edi, esi
xor eax, ebx
xor ecx, edi
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x34]
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x58]
xor eax, edi
shr ebx, 0xe
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x5c]
mov edi, edx
xor edi, dword [esp + 0x40]
mov ebx, esi
xor ebx, dword [esp + 0x44]
and edi, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xd8]
mov edx, dword [esp + 0x24]
adc ecx, dword [esp + 0xdc]
add eax, dword [esp + 0x48]
mov ebx, edx
adc ecx, dword [esp + 0x4c]
add eax, 0x32bbd1b8
adc ecx, 0x106aa070
add dword [esp + 0x50], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x20]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x24]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x20]
mov edx, ecx
xor esi, edi
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x38]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x10], esi
xor eax, edi
mov esi, ecx
or esi, dword [esp + 0x20]
and ecx, dword [esp + 0x20]
and esi, dword [esp + 0x28]
mov edi, edx
or edi, dword [esp + 0x24]
and edx, dword [esp + 0x24]
and edi, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xd0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov edx, eax
xor esi, esi
or esi, edi
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xd0]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xd4]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x6c]
xor esi, eax
mov eax, dword [esp + 0x68]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, eax
mov dword [esp + 0x14], edx
mov edx, eax
shrd eax, ecx, 1
shr ebx, 8
shr ecx, 1
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x6c]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x68]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
shr ecx, 7
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x54]
adc ecx, edx
add eax, dword [esp + 0xa8]
mov edx, dword [esp + 0x50]
adc ecx, dword [esp + 0xac]
add dword [esp + 0x60], eax
mov edi, edx
mov ebx, esi
adc dword [esp + 0x64], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
xor ecx, ecx
or eax, edi
or ecx, ebx
mov edi, edx
xor ebx, ebx
shl edi, 0xe
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x50]
xor eax, ebx
mov ebx, dword [esp + 0x54]
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x40]
xor eax, edi
shr ebx, 0xe
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x44]
mov edi, edx
xor edi, dword [esp + 0x30]
mov ebx, esi
xor ebx, dword [esp + 0x34]
and edi, dword [esp + 0x50]
and ebx, dword [esp + 0x54]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x60]
mov edx, dword [esp + 0x4c]
adc ecx, dword [esp + 0x64]
add eax, dword [esp + 0x58]
mov ebx, edx
adc ecx, dword [esp + 0x5c]
add eax, 0xb8d2d0c8
adc ecx, 0x19a4c116
add dword [esp + 0x28], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x48]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x4c]
xor eax, ebx
mov ebx, dword [esp + 0x48]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x20]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x24]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x48]
and ecx, dword [esp + 0x48]
and esi, dword [esp + 0x38]
mov edi, edx
or edi, dword [esp + 0x4c]
and edi, dword [esp + 0x3c]
and edx, dword [esp + 0x4c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xd8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov edx, eax
xor esi, esi
or esi, edi
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
or edx, ebx
add eax, eax
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xd8]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xdc]
shrd eax, ecx, 6
xor edx, ebx
xor esi, edi
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x74]
xor esi, eax
mov eax, dword [esp + 0x70]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, eax
mov dword [esp + 0x14], edx
mov edx, eax
shrd eax, ecx, 1
shr ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x70]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x74]
shrd eax, ecx, 7
xor esi, ebx
shr ecx, 7
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, edi
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x2c]
adc ecx, edx
add eax, dword [esp + 0xb0]
mov edx, dword [esp + 0x28]
adc ecx, dword [esp + 0xb4]
add dword [esp + 0x68], eax
mov eax, esi
mov edi, edx
adc dword [esp + 0x6c], ecx
mov ebx, esi
shr eax, 9
xor ecx, ecx
shld ebx, edi, 0x17
or ecx, ebx
shl edi, 0x17
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x28]
xor eax, ebx
mov ebx, dword [esp + 0x2c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x30]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x34]
mov edi, edx
xor edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x54]
and edi, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x68]
mov edx, dword [esp + 0x5c]
adc ecx, dword [esp + 0x6c]
add eax, dword [esp + 0x40]
mov ebx, edx
adc ecx, dword [esp + 0x44]
add eax, 0x5141ab53
adc ecx, 0x1e376c08
add dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x5c]
xor eax, ebx
mov ebx, dword [esp + 0x58]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor edi, edi
xor esi, edx
or edi, ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x58]
xor eax, edi
mov edi, esi
or edi, ecx
and edi, dword [esp + 0x20]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x5c]
and esi, ecx
mov ecx, dword [esp + 0x5c]
and ecx, edx
or ebx, edx
and ebx, dword [esp + 0x24]
or edi, esi
or ebx, ecx
mov ecx, dword [esp + 0x10]
add ecx, edi
adc eax, ebx
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x78]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x78]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x7c]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x60]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x64]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
add eax, eax
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x60]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x64]
shrd eax, ecx, 6
shr ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xb8]
adc ecx, dword [esp + 0xbc]
add dword [esp + 0x70], eax
adc dword [esp + 0x74], ecx
mov esi, dword [esp + 0x3c]
mov edx, dword [esp + 0x38]
mov edi, edx
mov ebx, esi
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov eax, esi
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x38]
xor eax, ebx
mov ebx, dword [esp + 0x3c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x50]
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x54]
mov edi, edx
xor edi, dword [esp + 0x28]
mov ebx, esi
xor ebx, dword [esp + 0x2c]
and edi, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x70]
mov edx, dword [esp + 0x44]
adc ecx, dword [esp + 0x74]
add eax, dword [esp + 0x30]
mov ebx, edx
adc ecx, dword [esp + 0x34]
add eax, 0xdf8eeb99
adc ecx, 0x2748774c
add dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x44]
xor eax, ebx
mov ebx, dword [esp + 0x40]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
or edi, ecx
mov ecx, dword [esp + 0x58]
xor esi, edx
mov edx, dword [esp + 0x5c]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x40]
and ecx, dword [esp + 0x40]
and esi, dword [esp + 0x48]
mov edi, edx
or edi, dword [esp + 0x44]
and edx, dword [esp + 0x44]
and edi, dword [esp + 0x4c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x80]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x80]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x84]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x68]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x6c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
add eax, eax
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x68]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x6c]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
shr ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ecx
add eax, esi
mov ecx, dword [esp + 0x14]
adc ecx, edx
add eax, dword [esp + 0xc0]
mov esi, dword [esp + 0x24]
adc ecx, dword [esp + 0xc4]
add dword [esp + 0x78], eax
mov edx, dword [esp + 0x20]
mov ebx, esi
adc dword [esp + 0x7c], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
mov eax, esi
shr eax, 9
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x20]
xor eax, ebx
mov ebx, dword [esp + 0x24]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x28]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x2c]
mov edi, edx
xor edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x3c]
and edi, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor edi, edx
xor ebx, esi
mov edx, dword [esp + 0x34]
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x78]
mov ebx, edx
adc ecx, dword [esp + 0x7c]
add eax, dword [esp + 0x50]
adc ecx, dword [esp + 0x54]
add eax, 0xe19b48a8
adc ecx, 0x34b0bcb5
add dword [esp + 0x48], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shl ecx, 0x1e
shr edi, 2
xor ebx, ebx
or edi, ecx
mov ecx, dword [esp + 0x34]
or ebx, edx
xor esi, edi
xor eax, ebx
mov edx, ecx
mov ebx, dword [esp + 0x30]
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x40]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x30]
and ecx, dword [esp + 0x30]
and esi, dword [esp + 0x58]
mov edi, edx
or edi, dword [esp + 0x34]
and edx, dword [esp + 0x34]
and edi, dword [esp + 0x5c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x88]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x88]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x8c]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0x70]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x74]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or edi, eax
mov eax, dword [esp + 0x70]
or ebx, ecx
mov ecx, dword [esp + 0x74]
xor esi, edi
xor edx, ebx
shrd eax, ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xc8]
mov esi, dword [esp + 0x4c]
adc ecx, dword [esp + 0xcc]
add dword [esp + 0x80], eax
mov edx, dword [esp + 0x48]
mov ebx, esi
adc dword [esp + 0x84], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x48]
xor eax, ebx
mov ebx, dword [esp + 0x4c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x38]
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x3c]
mov edi, edx
xor edi, dword [esp + 0x20]
mov ebx, esi
xor ebx, dword [esp + 0x24]
and edi, dword [esp + 0x48]
and ebx, dword [esp + 0x4c]
xor edi, edx
mov edx, dword [esp + 0x54]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x80]
mov ebx, edx
adc ecx, dword [esp + 0x84]
add eax, dword [esp + 0x28]
adc ecx, dword [esp + 0x2c]
add eax, 0xc5c95a63
adc ecx, 0x391c0cb3
add dword [esp + 0x58], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x50]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shr ebx, 0x1c
shl eax, 4
shld edx, ecx, 0x1e
or eax, ebx
shr edi, 2
xor ebx, ebx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x54]
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x50]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x30]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x50]
and ecx, dword [esp + 0x50]
and esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x54]
and edx, dword [esp + 0x54]
and edi, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x90]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x90]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x94]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x78]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x7c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
mov dword [esp + 0x14], edx
mov edx, eax
or esi, edi
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
shl edx, 0xd
add eax, eax
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
add eax, eax
or ebx, ecx
or edi, eax
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xd0]
mov esi, dword [esp + 0x5c]
adc ecx, dword [esp + 0xd4]
add dword [esp + 0x88], eax
mov edx, dword [esp + 0x58]
mov ebx, esi
adc dword [esp + 0x8c], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x58]
xor eax, ebx
mov ebx, dword [esp + 0x5c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x20]
shl esi, 0x12
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x24]
mov edi, edx
xor edi, dword [esp + 0x48]
mov ebx, esi
xor ebx, dword [esp + 0x4c]
and edi, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor edi, edx
mov edx, dword [esp + 0x2c]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x88]
mov ebx, edx
adc ecx, dword [esp + 0x8c]
add eax, dword [esp + 0x38]
adc ecx, dword [esp + 0x3c]
add eax, 0xe3418acb
adc ecx, 0x4ed8aa4a
add dword [esp + 0x40], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
shrd edi, ebx, 0x1c
mov eax, ecx
xor esi, esi
shl eax, 4
shr ebx, 0x1c
or esi, edi
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x28]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x2c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x50]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x28]
and ecx, dword [esp + 0x28]
and esi, dword [esp + 0x30]
mov edi, edx
or edi, dword [esp + 0x2c]
and edx, dword [esp + 0x2c]
and edi, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x98]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x98]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x9c]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
shr ecx, 7
xor esi, eax
mov eax, dword [esp + 0x80]
xor edx, ecx
mov ecx, dword [esp + 0x84]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
mov edx, eax
xor esi, esi
shl edx, 0xd
shr ebx, 0x13
or esi, edi
or edx, ebx
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x84]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0x80]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xd8]
mov esi, dword [esp + 0x44]
adc ecx, dword [esp + 0xdc]
add dword [esp + 0x90], eax
mov edx, dword [esp + 0x40]
mov ebx, esi
adc dword [esp + 0x94], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x40]
xor eax, ebx
mov ebx, dword [esp + 0x44]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x48]
shl esi, 0x12
or esi, ebx
mov ebx, dword [esp + 0x5c]
xor ecx, esi
mov esi, dword [esp + 0x4c]
xor eax, edi
mov edi, dword [esp + 0x58]
xor edi, edx
and edi, dword [esp + 0x40]
xor ebx, esi
and ebx, dword [esp + 0x44]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x90]
adc ecx, dword [esp + 0x94]
add eax, dword [esp + 0x20]
adc ecx, dword [esp + 0x24]
add eax, 0x7763e373
adc ecx, 0x5b9cca4f
add dword [esp + 0x30], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov eax, ecx
xor esi, esi
shl eax, 4
mov edx, dword [esp + 0x3c]
mov edi, ecx
mov ebx, edx
shrd edi, ebx, 0x1c
or esi, edi
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x3c]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x38]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x28]
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x38]
and ecx, dword [esp + 0x38]
and esi, dword [esp + 0x50]
mov edi, edx
or edi, dword [esp + 0x3c]
and edx, dword [esp + 0x3c]
and edi, dword [esp + 0x54]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xa0]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xa4]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xa0]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
shr ecx, 7
xor esi, eax
mov eax, dword [esp + 0x88]
xor edx, ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
mov edx, eax
xor esi, esi
shl edx, 0xd
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
or esi, edi
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x8c]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0x88]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x60]
mov esi, dword [esp + 0x34]
adc ecx, dword [esp + 0x64]
add dword [esp + 0x98], eax
mov edx, dword [esp + 0x30]
mov ebx, esi
adc dword [esp + 0x9c], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x30]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x34]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x58]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x5c]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x40]
mov ebx, esi
xor ebx, dword [esp + 0x44]
and edi, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x98]
adc ecx, dword [esp + 0x9c]
add eax, dword [esp + 0x48]
adc ecx, dword [esp + 0x4c]
add eax, 0xd6b2b8a3
adc ecx, 0x682e6ff3
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
add dword [esp + 0x50], eax
mov edx, dword [esp + 0x24]
mov ebx, edx
adc dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x20]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x24]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x20]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x38]
shr edx, 7
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x20]
and ecx, dword [esp + 0x20]
and esi, dword [esp + 0x28]
mov edi, edx
or edi, dword [esp + 0x24]
and edx, dword [esp + 0x24]
and edi, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xa8]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xac]
or ebx, eax
mov eax, dword [esp + 0xa8]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
shr ecx, 7
xor esi, eax
xor edx, ecx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], edx
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x94]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
xor esi, esi
or esi, edi
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
add eax, eax
shr edi, 0x1d
shl edx, 0xd
or edx, ebx
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x94]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0x90]
xor esi, edi
shrd eax, ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x68]
mov esi, dword [esp + 0x54]
adc ecx, dword [esp + 0x6c]
add dword [esp + 0xa0], eax
mov edx, dword [esp + 0x50]
mov ebx, esi
adc dword [esp + 0xa4], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x50]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x54]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x40]
shl esi, 0x12
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x44]
mov edi, edx
xor edi, dword [esp + 0x30]
mov ebx, esi
xor ebx, dword [esp + 0x34]
and edi, dword [esp + 0x50]
and ebx, dword [esp + 0x54]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xa0]
adc ecx, dword [esp + 0xa4]
add eax, dword [esp + 0x58]
mov edx, dword [esp + 0x4c]
adc ecx, dword [esp + 0x5c]
add eax, 0x5defb2fc
adc ecx, 0x748f82ee
add dword [esp + 0x28], eax
mov dword [esp + 0x1c], ecx
mov ebx, edx
adc dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x48]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov dword [esp + 0x18], eax
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x48]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x4c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x20]
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x24]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x48]
and ecx, dword [esp + 0x48]
and esi, dword [esp + 0x38]
mov edi, edx
or edi, dword [esp + 0x4c]
and edx, dword [esp + 0x4c]
and edi, dword [esp + 0x3c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xb0]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
xor ebx, ebx
shr ecx, 1
shl edi, 0x1f
or ebx, eax
mov eax, dword [esp + 0xb0]
or edi, ecx
mov ecx, dword [esp + 0xb4]
xor esi, ebx
xor edx, edi
shrd eax, ecx, 7
xor esi, eax
mov eax, dword [esp + 0x98]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x9c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
add eax, eax
shr edi, 0x1d
shl edx, 0xd
or edx, ebx
add eax, eax
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x9c]
add eax, eax
or edi, eax
mov eax, dword [esp + 0x98]
xor esi, edi
shrd eax, ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x70]
mov esi, dword [esp + 0x2c]
adc ecx, dword [esp + 0x74]
add dword [esp + 0xa8], eax
mov edx, dword [esp + 0x28]
mov ebx, esi
adc dword [esp + 0xac], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x28]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x2c]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shr ebx, 0xe
shl esi, 0x12
or edi, edx
mov edx, dword [esp + 0x30]
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x34]
mov edi, edx
xor edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x54]
and edi, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor ebx, esi
xor edi, edx
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xa8]
mov edx, dword [esp + 0x5c]
adc ecx, dword [esp + 0xac]
add eax, dword [esp + 0x40]
mov ebx, edx
adc ecx, dword [esp + 0x44]
add eax, 0x43172f60
adc ecx, 0x78a5636f
add dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov edi, ecx
shrd edi, ebx, 0x1c
shr ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x58]
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x5c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shl ebx, 0x19
shr edx, 7
or edx, ebx
mov ebx, dword [esp + 0x5c]
xor esi, edx
mov edx, dword [esp + 0x4c]
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x48]
xor eax, edi
or ebx, edx
and ebx, dword [esp + 0x24]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x58]
mov edi, esi
or edi, ecx
and edi, dword [esp + 0x20]
and esi, ecx
mov ecx, dword [esp + 0x5c]
and ecx, edx
or ebx, ecx
mov ecx, dword [esp + 0x10]
or edi, esi
add ecx, edi
adc eax, ebx
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xb8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
shr ebx, 8
shl edx, 0x18
or esi, edi
or edx, ebx
mov edi, eax
xor ebx, ebx
shl edi, 0x1f
shrd eax, ecx, 1
or ebx, eax
mov eax, dword [esp + 0xb8]
shr ecx, 1
or edi, ecx
mov ecx, dword [esp + 0xbc]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0xa0]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xa4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0xa0]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xa4]
shrd eax, ecx, 6
xor esi, edi
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x3c]
adc ecx, edx
add eax, dword [esp + 0x78]
mov edx, dword [esp + 0x38]
adc ecx, dword [esp + 0x7c]
add dword [esp + 0xb0], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0xb4], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x38]
shr esi, 0x12
shl edi, 0xe
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x3c]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shl esi, 0x12
shr ebx, 0xe
or edi, edx
or esi, ebx
xor eax, edi
xor ecx, esi
mov edx, dword [esp + 0x50]
mov esi, dword [esp + 0x54]
mov edi, edx
xor edi, dword [esp + 0x28]
mov ebx, esi
xor ebx, dword [esp + 0x2c]
and edi, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xb0]
mov edx, dword [esp + 0x44]
adc ecx, dword [esp + 0xb4]
add eax, dword [esp + 0x30]
mov ebx, edx
adc ecx, dword [esp + 0x34]
add eax, 0xa1f0ab72
adc ecx, 0x84c87814
add dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x44]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x40]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x58]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x5c]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x40]
and ecx, dword [esp + 0x40]
and esi, dword [esp + 0x48]
mov edi, edx
or edi, dword [esp + 0x44]
and edx, dword [esp + 0x44]
and edi, dword [esp + 0x4c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc0]
mov edx, eax
mov edi, eax
mov ebx, ecx
xor esi, esi
shl edx, 0x18
shrd edi, ebx, 8
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
or edx, ebx
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xc4]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xc0]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xa8]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xac]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0xa8]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xac]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x24]
adc ecx, edx
add eax, dword [esp + 0x80]
mov edx, dword [esp + 0x20]
adc ecx, dword [esp + 0x84]
add dword [esp + 0xb8], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0xbc], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shl edi, 0xe
shr esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x20]
or edi, esi
xor ecx, edi
xor eax, ebx
mov ebx, dword [esp + 0x24]
mov esi, edx
xor edi, edi
shl esi, 0x12
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x28]
xor eax, edi
shr ebx, 0xe
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x2c]
mov edi, edx
xor edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x3c]
and edi, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xb8]
mov edx, dword [esp + 0x34]
adc ecx, dword [esp + 0xbc]
add eax, dword [esp + 0x50]
mov ebx, edx
adc ecx, dword [esp + 0x54]
add eax, 0x1a6439ec
adc ecx, 0x8cc70208
add dword [esp + 0x48], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x34]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x30]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x40]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x44]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x30]
and ecx, dword [esp + 0x30]
and esi, dword [esp + 0x58]
mov edi, edx
or edi, dword [esp + 0x34]
and edx, dword [esp + 0x34]
and edi, dword [esp + 0x5c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xc8]
mov edx, eax
mov ecx, dword [esp + 0xcc]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shr ecx, 1
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xcc]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xc8]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xb0]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xb4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0xb0]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xb4]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x4c]
adc ecx, edx
add eax, dword [esp + 0x88]
mov edx, dword [esp + 0x48]
adc ecx, dword [esp + 0x8c]
add dword [esp + 0xc0], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0xc4], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shl edi, 0xe
shr esi, 0x12
or ebx, edx
or edi, esi
xor eax, ebx
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x38]
xor eax, edi
shr ebx, 0xe
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x3c]
mov edi, edx
xor edi, dword [esp + 0x20]
mov ebx, esi
xor ebx, dword [esp + 0x24]
and edi, dword [esp + 0x48]
and ebx, dword [esp + 0x4c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xc0]
mov edx, dword [esp + 0x54]
adc ecx, dword [esp + 0xc4]
add eax, dword [esp + 0x28]
mov ebx, edx
adc ecx, dword [esp + 0x2c]
add eax, 0x23631e28
adc ecx, 0x90befffa
add dword [esp + 0x58], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x50]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x54]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x50]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x30]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x10], esi
xor eax, edi
mov esi, ecx
or esi, dword [esp + 0x50]
and ecx, dword [esp + 0x50]
and esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x54]
and edx, dword [esp + 0x54]
and edi, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xd0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xd4]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xd0]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xb8]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xbc]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
add eax, eax
shr ebx, 0x13
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xb8]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xbc]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x5c]
adc ecx, edx
add eax, dword [esp + 0x90]
mov edx, dword [esp + 0x58]
adc ecx, dword [esp + 0x94]
add dword [esp + 0xc8], eax
mov edi, edx
mov ebx, esi
adc dword [esp + 0xcc], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
xor ecx, ecx
or eax, edi
or ecx, ebx
mov edi, edx
xor ebx, ebx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x58]
xor eax, ebx
mov ebx, dword [esp + 0x5c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x20]
xor eax, edi
shr ebx, 0xe
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x24]
mov edi, edx
xor edi, dword [esp + 0x48]
mov ebx, esi
xor ebx, dword [esp + 0x4c]
and edi, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xc8]
mov edx, dword [esp + 0x2c]
adc ecx, dword [esp + 0xcc]
add eax, dword [esp + 0x38]
mov ebx, edx
adc ecx, dword [esp + 0x3c]
add eax, 0xde82bde9
adc ecx, 0xa4506ceb
add dword [esp + 0x40], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x2c]
xor eax, ebx
mov ebx, dword [esp + 0x28]
mov edx, ecx
xor esi, edi
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
shl ebx, 0x19
or edi, ecx
mov ecx, dword [esp + 0x50]
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x54]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x28]
mov edi, edx
or edi, dword [esp + 0x2c]
and esi, dword [esp + 0x30]
and edi, dword [esp + 0x34]
and ecx, dword [esp + 0x28]
and edx, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xd8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xd8]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xdc]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xc0]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xc4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
add eax, eax
shl edx, 0xd
shr ebx, 0x13
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xc0]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xc4]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x44]
adc ecx, edx
add eax, dword [esp + 0x98]
mov edx, dword [esp + 0x40]
adc ecx, dword [esp + 0x9c]
add dword [esp + 0xd0], eax
mov eax, esi
mov edi, edx
adc dword [esp + 0xd4], ecx
shr eax, 9
xor ecx, ecx
mov ebx, esi
shld ebx, edi, 0x17
or ecx, ebx
shl edi, 0x17
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x40]
xor eax, ebx
mov ebx, dword [esp + 0x44]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x48]
shr ebx, 0xe
xor eax, edi
mov edi, dword [esp + 0x58]
xor edi, edx
and edi, dword [esp + 0x40]
shl esi, 0x12
or esi, ebx
mov ebx, dword [esp + 0x5c]
xor ecx, esi
mov esi, dword [esp + 0x4c]
xor ebx, esi
and ebx, dword [esp + 0x44]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xd0]
mov edx, dword [esp + 0x3c]
adc ecx, dword [esp + 0xd4]
add eax, dword [esp + 0x20]
mov ebx, edx
adc ecx, dword [esp + 0x24]
add eax, 0xb2c67915
adc ecx, 0xbef9a3f7
add dword [esp + 0x30], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x3c]
xor eax, ebx
mov ebx, dword [esp + 0x38]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
or edi, ecx
mov ecx, dword [esp + 0x28]
xor esi, edx
mov dword [esp + 0x10], esi
mov esi, ecx
xor eax, edi
or esi, dword [esp + 0x38]
and ecx, dword [esp + 0x38]
and esi, dword [esp + 0x50]
mov edx, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x10]
mov edi, edx
or edi, dword [esp + 0x3c]
and edx, dword [esp + 0x3c]
and edi, dword [esp + 0x54]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xc8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
xor esi, esi
or esi, edi
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
or edx, ebx
add eax, eax
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xc8]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xcc]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x64]
xor esi, eax
mov eax, dword [esp + 0x60]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x60]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x64]
shrd eax, ecx, 7
xor esi, ebx
shr ecx, 7
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, edi
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x34]
adc ecx, edx
add eax, dword [esp + 0xa0]
adc ecx, dword [esp + 0xa4]
add dword [esp + 0xd8], eax
adc dword [esp + 0xdc], ecx
mov edx, dword [esp + 0x30]
mov edi, edx
mov ebx, esi
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov eax, esi
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x30]
xor eax, ebx
mov ebx, dword [esp + 0x34]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x58]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x5c]
mov edi, edx
xor edi, dword [esp + 0x40]
mov ebx, esi
xor ebx, dword [esp + 0x44]
and edi, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xd8]
mov edx, dword [esp + 0x24]
adc ecx, dword [esp + 0xdc]
add eax, dword [esp + 0x48]
mov ebx, edx
adc ecx, dword [esp + 0x4c]
add eax, 0xe372532b
adc ecx, 0xc67178f2
add dword [esp + 0x50], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x20]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x24]
xor eax, ebx
mov ebx, dword [esp + 0x20]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
or edi, ecx
mov ecx, dword [esp + 0x38]
xor esi, edx
mov edx, dword [esp + 0x3c]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
and ecx, dword [esp + 0x20]
or esi, dword [esp + 0x20]
mov edi, edx
or edi, dword [esp + 0x24]
and esi, dword [esp + 0x28]
and edi, dword [esp + 0x2c]
and edx, dword [esp + 0x24]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xd0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov edx, eax
xor esi, esi
or esi, edi
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
or edx, ebx
add eax, eax
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xd0]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xd4]
shrd eax, ecx, 6
xor edx, ebx
xor esi, edi
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x6c]
xor esi, eax
mov eax, dword [esp + 0x68]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], edx
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x68]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x6c]
shrd eax, ecx, 7
xor esi, ebx
shr ecx, 7
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xa8]
mov esi, dword [esp + 0x54]
adc ecx, dword [esp + 0xac]
add dword [esp + 0x60], eax
mov edx, dword [esp + 0x50]
mov ebx, esi
adc dword [esp + 0x64], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
mov eax, esi
shr eax, 9
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x50]
xor eax, ebx
mov ebx, dword [esp + 0x54]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x40]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x44]
mov edi, edx
xor edi, dword [esp + 0x30]
mov ebx, esi
xor ebx, dword [esp + 0x34]
and edi, dword [esp + 0x50]
and ebx, dword [esp + 0x54]
xor edi, edx
xor ebx, esi
mov edx, dword [esp + 0x4c]
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x60]
mov ebx, edx
adc ecx, dword [esp + 0x64]
add eax, dword [esp + 0x58]
adc ecx, dword [esp + 0x5c]
add eax, 0xea26619c
adc ecx, 0xca273ece
add dword [esp + 0x28], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x48]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x4c]
xor ebx, ebx
or ebx, edx
mov edx, ecx
xor esi, edi
xor eax, ebx
shr edx, 7
mov ebx, dword [esp + 0x48]
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x20]
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x48]
and ecx, dword [esp + 0x48]
and esi, dword [esp + 0x38]
mov edi, edx
or edi, dword [esp + 0x4c]
and edx, dword [esp + 0x4c]
and edi, dword [esp + 0x3c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xd8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov edx, eax
xor esi, esi
or esi, edi
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xdc]
add eax, eax
or edi, eax
mov eax, dword [esp + 0xd8]
shrd eax, ecx, 6
xor edx, ebx
xor esi, edi
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x74]
xor esi, eax
mov eax, dword [esp + 0x70]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
shl edi, 0x1f
or ebx, eax
mov eax, dword [esp + 0x70]
or edi, ecx
mov ecx, dword [esp + 0x74]
xor esi, ebx
xor edx, edi
shrd eax, ecx, 7
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xb0]
mov esi, dword [esp + 0x2c]
adc ecx, dword [esp + 0xb4]
add dword [esp + 0x68], eax
mov edx, dword [esp + 0x28]
mov ebx, esi
adc dword [esp + 0x6c], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
mov eax, esi
shr eax, 9
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x28]
xor eax, ebx
mov ebx, dword [esp + 0x2c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x30]
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x34]
mov edi, edx
xor edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x54]
and edi, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor edi, edx
mov edx, dword [esp + 0x5c]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x68]
mov ebx, edx
adc ecx, dword [esp + 0x6c]
add eax, dword [esp + 0x40]
adc ecx, dword [esp + 0x44]
add eax, 0x21c0c207
adc ecx, 0xd186b8c7
add dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
xor ebx, ebx
or edi, ecx
or ebx, edx
mov ecx, dword [esp + 0x5c]
xor eax, ebx
mov ebx, dword [esp + 0x58]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shl ebx, 0x19
shr edx, 7
or edx, ebx
mov ebx, dword [esp + 0x5c]
xor esi, edx
mov edx, dword [esp + 0x4c]
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x48]
xor eax, edi
or ebx, edx
and ebx, dword [esp + 0x24]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x58]
mov edi, esi
or edi, ecx
and edi, dword [esp + 0x20]
and esi, ecx
mov ecx, dword [esp + 0x5c]
and ecx, edx
or ebx, ecx
mov ecx, dword [esp + 0x10]
or edi, esi
add ecx, edi
adc eax, ebx
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x78]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x78]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x7c]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x60]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x64]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
mov dword [esp + 0x14], edx
mov edx, eax
or esi, edi
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
add eax, eax
or ebx, ecx
mov ecx, dword [esp + 0x64]
add eax, eax
or edi, eax
mov eax, dword [esp + 0x60]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xb8]
mov esi, dword [esp + 0x3c]
adc ecx, dword [esp + 0xbc]
add dword [esp + 0x70], eax
mov edx, dword [esp + 0x38]
mov ebx, esi
adc dword [esp + 0x74], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x38]
xor eax, ebx
mov ebx, dword [esp + 0x3c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x50]
shl esi, 0x12
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x54]
mov edi, edx
xor edi, dword [esp + 0x28]
mov ebx, esi
xor ebx, dword [esp + 0x2c]
and edi, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor edi, edx
mov edx, dword [esp + 0x44]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x70]
mov ebx, edx
adc ecx, dword [esp + 0x74]
add eax, dword [esp + 0x30]
adc ecx, dword [esp + 0x34]
add eax, 0xcde0eb1e
adc ecx, 0xeada7dd6
add dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov edi, ecx
shrd edi, ebx, 0x1c
mov eax, ecx
xor esi, esi
shl eax, 4
shr ebx, 0x1c
or esi, edi
or eax, ebx
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x40]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x44]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x58]
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x40]
and ecx, dword [esp + 0x40]
and esi, dword [esp + 0x48]
mov edi, edx
or edi, dword [esp + 0x44]
and edx, dword [esp + 0x44]
and edi, dword [esp + 0x4c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x80]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x80]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x84]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
shr ecx, 7
xor esi, eax
mov eax, dword [esp + 0x68]
xor edx, ecx
mov ecx, dword [esp + 0x6c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
mov edx, eax
xor esi, esi
shl edx, 0xd
shr ebx, 0x13
or esi, edi
or edx, ebx
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x6c]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0x68]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xc0]
mov esi, dword [esp + 0x24]
adc ecx, dword [esp + 0xc4]
add dword [esp + 0x78], eax
mov edx, dword [esp + 0x20]
mov ebx, esi
adc dword [esp + 0x7c], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x20]
xor eax, ebx
mov ebx, dword [esp + 0x24]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x28]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x2c]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x3c]
and edi, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x78]
adc ecx, dword [esp + 0x7c]
add eax, dword [esp + 0x50]
adc ecx, dword [esp + 0x54]
add eax, 0xee6ed178
adc ecx, 0xf57d4f7f
add dword [esp + 0x48], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov eax, ecx
xor esi, esi
mov edx, dword [esp + 0x34]
mov edi, ecx
mov ebx, edx
shrd edi, ebx, 0x1c
or esi, edi
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x34]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x30]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x40]
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x30]
and ecx, dword [esp + 0x30]
and esi, dword [esp + 0x58]
mov edi, edx
or edi, dword [esp + 0x34]
and edx, dword [esp + 0x34]
and edi, dword [esp + 0x5c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x88]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x8c]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0x88]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
shr ecx, 7
xor esi, eax
mov eax, dword [esp + 0x70]
xor edx, ecx
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], esi
mov edx, eax
xor esi, esi
shl edx, 0xd
mov edi, eax
mov ecx, dword [esp + 0x74]
mov ebx, ecx
shrd edi, ebx, 0x13
or esi, edi
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x74]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0x70]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xc8]
mov esi, dword [esp + 0x4c]
adc ecx, dword [esp + 0xcc]
add dword [esp + 0x80], eax
mov edx, dword [esp + 0x48]
mov ebx, esi
adc dword [esp + 0x84], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x48]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x4c]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x38]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x3c]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x20]
mov ebx, esi
xor ebx, dword [esp + 0x24]
and edi, dword [esp + 0x48]
and ebx, dword [esp + 0x4c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x80]
adc ecx, dword [esp + 0x84]
add eax, dword [esp + 0x28]
adc ecx, dword [esp + 0x2c]
add eax, 0x72176fba
mov dword [esp + 0x18], eax
adc ecx, 0x6f067aa
add dword [esp + 0x58], eax
mov edx, dword [esp + 0x54]
mov dword [esp + 0x1c], ecx
adc dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x50]
mov edi, ecx
mov ebx, edx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x54]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x50]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x30]
shr edx, 7
xor eax, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x50]
and ecx, dword [esp + 0x50]
and esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x54]
and edx, dword [esp + 0x54]
and edi, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x90]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0x94]
or ebx, eax
mov eax, dword [esp + 0x90]
shrd eax, ecx, 7
xor esi, ebx
xor esi, eax
xor edx, edi
shr ecx, 7
mov dword [esp + 0x10], esi
xor edx, ecx
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
shr ebx, 0x13
add eax, eax
shr edi, 0x1d
shl edx, 0xd
or edx, ebx
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x7c]
add eax, eax
add eax, eax
or edi, eax
mov eax, dword [esp + 0x78]
xor esi, edi
shrd eax, ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xd0]
mov esi, dword [esp + 0x5c]
adc ecx, dword [esp + 0xd4]
add dword [esp + 0x88], eax
mov edx, dword [esp + 0x58]
mov ebx, esi
adc dword [esp + 0x8c], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x58]
shl edi, 0xe
xor eax, ebx
mov ebx, dword [esp + 0x5c]
shr esi, 0x12
or edi, esi
xor ecx, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
xor edi, edi
or edi, edx
mov edx, dword [esp + 0x20]
shl esi, 0x12
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x24]
mov edi, edx
xor edi, dword [esp + 0x48]
mov ebx, esi
xor ebx, dword [esp + 0x4c]
and edi, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x88]
adc ecx, dword [esp + 0x8c]
add eax, dword [esp + 0x38]
mov edx, dword [esp + 0x2c]
adc ecx, dword [esp + 0x3c]
add eax, 0xa2c898a6
adc ecx, 0xa637dc5
add dword [esp + 0x40], eax
mov dword [esp + 0x1c], ecx
mov ebx, edx
adc dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov dword [esp + 0x18], eax
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x28]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x2c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x50]
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x54]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x28]
and ecx, dword [esp + 0x28]
and esi, dword [esp + 0x30]
mov edi, edx
or edi, dword [esp + 0x2c]
and edx, dword [esp + 0x2c]
and edi, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x9c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x98]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
xor esi, esi
or esi, edi
mov edx, eax
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
xor ebx, ebx
shl edi, 0x1f
shr ecx, 1
or ebx, eax
mov eax, dword [esp + 0x98]
or edi, ecx
xor esi, ebx
xor edx, edi
mov ecx, dword [esp + 0x9c]
shrd eax, ecx, 7
xor esi, eax
mov eax, dword [esp + 0x80]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x84]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x84]
add eax, eax
or edi, eax
mov eax, dword [esp + 0x80]
xor esi, edi
shrd eax, ecx, 6
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xd8]
mov esi, dword [esp + 0x44]
adc ecx, dword [esp + 0xdc]
add dword [esp + 0x90], eax
mov edx, dword [esp + 0x40]
mov ebx, esi
adc dword [esp + 0x94], ecx
mov edi, edx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x40]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x44]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x48]
shl esi, 0x12
or esi, ebx
mov ebx, dword [esp + 0x5c]
xor eax, edi
mov edi, dword [esp + 0x58]
xor ecx, esi
mov esi, dword [esp + 0x4c]
xor edi, edx
xor ebx, esi
and edi, dword [esp + 0x40]
and ebx, dword [esp + 0x44]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x90]
mov edx, dword [esp + 0x3c]
adc ecx, dword [esp + 0x94]
add eax, dword [esp + 0x20]
mov ebx, edx
adc ecx, dword [esp + 0x24]
add eax, 0xbef90dae
adc ecx, 0x113f9804
add dword [esp + 0x30], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shr edi, 2
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x38]
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x3c]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x28]
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x2c]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x38]
and ecx, dword [esp + 0x38]
and esi, dword [esp + 0x50]
mov edi, edx
or edi, dword [esp + 0x3c]
and edx, dword [esp + 0x3c]
and edi, dword [esp + 0x54]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xa0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
shr ebx, 8
or esi, edi
shl edx, 0x18
mov edi, eax
or edx, ebx
xor ebx, ebx
shl edi, 0x1f
shrd eax, ecx, 1
or ebx, eax
mov eax, dword [esp + 0xa0]
shr ecx, 1
or edi, ecx
mov ecx, dword [esp + 0xa4]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x88]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x8c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0x88]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x8c]
shrd eax, ecx, 6
xor esi, edi
xor edx, ebx
xor esi, eax
mov eax, dword [esp + 0x10]
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x60]
mov esi, dword [esp + 0x34]
adc ecx, dword [esp + 0x64]
add dword [esp + 0x98], eax
mov edx, dword [esp + 0x30]
mov ebx, esi
adc dword [esp + 0x9c], ecx
mov edi, edx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x30]
shr esi, 0x12
shl edi, 0xe
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x34]
mov esi, edx
shrd edx, ebx, 0xe
xor ecx, edi
xor edi, edi
shl esi, 0x12
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x58]
or esi, ebx
xor eax, edi
xor ecx, esi
mov esi, dword [esp + 0x5c]
mov edi, edx
xor edi, dword [esp + 0x40]
mov ebx, esi
xor ebx, dword [esp + 0x44]
and edi, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0x98]
mov edx, dword [esp + 0x24]
adc ecx, dword [esp + 0x9c]
add eax, dword [esp + 0x48]
mov ebx, edx
adc ecx, dword [esp + 0x4c]
add eax, 0x131c471b
adc ecx, 0x1b710b35
add dword [esp + 0x50], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x20]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x24]
xor eax, ebx
mov ebx, dword [esp + 0x20]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x38]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x3c]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x20]
and ecx, dword [esp + 0x20]
and esi, dword [esp + 0x28]
mov edi, edx
or edi, dword [esp + 0x24]
and edx, dword [esp + 0x24]
and edi, dword [esp + 0x2c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xa8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
shl edx, 0x18
shr ebx, 8
or esi, edi
or edx, ebx
mov edi, eax
shrd eax, ecx, 1
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xac]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xa8]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x90]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x94]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
shr edi, 0x1d
add eax, eax
or edi, eax
mov eax, dword [esp + 0x90]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x94]
shrd eax, ecx, 6
xor esi, edi
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x54]
adc ecx, edx
add eax, dword [esp + 0x68]
mov edx, dword [esp + 0x50]
adc ecx, dword [esp + 0x6c]
add dword [esp + 0xa0], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0xa4], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shr esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x50]
shl edi, 0xe
or edi, esi
xor eax, ebx
mov ebx, dword [esp + 0x54]
mov esi, edx
xor ecx, edi
xor edi, edi
shl esi, 0x12
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x40]
xor eax, edi
shr ebx, 0xe
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x44]
mov edi, edx
xor edi, dword [esp + 0x30]
mov ebx, esi
xor ebx, dword [esp + 0x34]
and edi, dword [esp + 0x50]
and ebx, dword [esp + 0x54]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xa0]
mov edx, dword [esp + 0x4c]
adc ecx, dword [esp + 0xa4]
add eax, dword [esp + 0x58]
mov ebx, edx
adc ecx, dword [esp + 0x5c]
add eax, 0x23047d84
adc ecx, 0x28db77f5
add dword [esp + 0x28], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x48]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
shr ebx, 0x1c
or eax, ebx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x4c]
xor ebx, ebx
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x48]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
shr edx, 7
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x20]
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x24]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x48]
and ecx, dword [esp + 0x48]
and esi, dword [esp + 0x38]
mov edi, edx
or edi, dword [esp + 0x4c]
and edx, dword [esp + 0x4c]
and edi, dword [esp + 0x3c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xb0]
mov edx, eax
xor esi, esi
mov ecx, dword [esp + 0xb4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shr ecx, 1
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xb4]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xb0]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0x98]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0x9c]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0x98]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0x9c]
shrd eax, ecx, 6
xor esi, edi
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
shr ecx, 6
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x2c]
adc ecx, edx
add eax, dword [esp + 0x70]
mov edx, dword [esp + 0x28]
adc ecx, dword [esp + 0x74]
add dword [esp + 0xa8], eax
mov ebx, esi
mov edi, edx
adc dword [esp + 0xac], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
shl edi, 0xe
shr esi, 0x12
or ebx, edx
or edi, esi
xor eax, ebx
xor ecx, edi
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x30]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x34]
mov edi, edx
xor edi, dword [esp + 0x50]
mov ebx, esi
xor ebx, dword [esp + 0x54]
and edi, dword [esp + 0x28]
and ebx, dword [esp + 0x2c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xa8]
mov edx, dword [esp + 0x5c]
adc ecx, dword [esp + 0xac]
add eax, dword [esp + 0x40]
mov ebx, edx
adc ecx, dword [esp + 0x44]
add eax, 0x40c72493
adc ecx, 0x32caab7b
add dword [esp + 0x38], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x58]
mov edi, ecx
shrd edi, ebx, 0x1c
mov eax, ecx
xor esi, esi
or esi, edi
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shr edi, 2
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x5c]
xor eax, ebx
mov ebx, dword [esp + 0x58]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shl ebx, 0x19
shr edx, 7
or edx, ebx
mov ebx, dword [esp + 0x5c]
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x48]
xor esi, edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x58]
xor eax, edi
mov edi, esi
or edi, ecx
and edi, dword [esp + 0x20]
and esi, ecx
mov ecx, dword [esp + 0x5c]
or ebx, edx
and ebx, dword [esp + 0x24]
and ecx, edx
or ebx, ecx
mov ecx, dword [esp + 0x10]
or edi, esi
add ecx, edi
adc eax, ebx
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0xbc]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xb8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shr ecx, 1
shl edx, 0x18
or edx, ebx
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xbc]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xb8]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xa0]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xa4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov edi, ecx
mov dword [esp + 0x14], edx
mov edx, eax
shld ecx, eax, 3
add eax, eax
add eax, eax
shr ebx, 0x13
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xa0]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xa4]
shrd eax, ecx, 6
xor esi, edi
shr ecx, 6
xor esi, eax
mov eax, dword [esp + 0x10]
xor edx, ebx
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x3c]
adc ecx, edx
add eax, dword [esp + 0x78]
mov edx, dword [esp + 0x38]
adc ecx, dword [esp + 0x7c]
add dword [esp + 0xb0], eax
mov edi, edx
mov ebx, esi
adc dword [esp + 0xb4], ecx
shld ebx, edi, 0x17
mov eax, esi
shl edi, 0x17
shr eax, 9
xor ecx, ecx
or eax, edi
or ecx, ebx
mov edi, edx
shrd edx, esi, 0x12
xor ebx, ebx
or ebx, edx
mov edx, dword [esp + 0x38]
xor eax, ebx
mov ebx, dword [esp + 0x3c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x50]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x54]
mov edi, edx
xor edi, dword [esp + 0x28]
mov ebx, esi
xor ebx, dword [esp + 0x2c]
and edi, dword [esp + 0x38]
and ebx, dword [esp + 0x3c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xb0]
mov edx, dword [esp + 0x44]
adc ecx, dword [esp + 0xb4]
add eax, dword [esp + 0x30]
mov ebx, edx
adc ecx, dword [esp + 0x34]
add eax, 0x15c9bebc
adc ecx, 0x3c9ebe0a
add dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x40]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shr edi, 2
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x44]
xor eax, ebx
mov ebx, dword [esp + 0x40]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
xor edi, edi
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x5c]
or edi, ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x10], esi
xor eax, edi
mov esi, ecx
or esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x44]
and esi, dword [esp + 0x48]
and edi, dword [esp + 0x4c]
and ecx, dword [esp + 0x40]
and edx, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xc4]
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xc0]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xa8]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xac]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
add eax, eax
shl edx, 0xd
shr ebx, 0x13
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xac]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xa8]
shrd ecx, eax, 6
shr eax, 6
xor esi, edi
xor edx, ebx
xor edx, eax
mov eax, dword [esp + 0x10]
xor esi, ecx
mov ecx, dword [esp + 0x14]
add eax, esi
mov esi, dword [esp + 0x24]
adc ecx, edx
add eax, dword [esp + 0x80]
mov edx, dword [esp + 0x20]
adc ecx, dword [esp + 0x84]
add dword [esp + 0xb8], eax
mov eax, esi
mov edi, edx
adc dword [esp + 0xbc], ecx
shr eax, 9
xor ecx, ecx
mov ebx, esi
shld ebx, edi, 0x17
or ecx, ebx
shl edi, 0x17
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x20]
xor eax, ebx
mov ebx, dword [esp + 0x24]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x28]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x2c]
mov edi, edx
xor edi, dword [esp + 0x38]
mov ebx, esi
xor ebx, dword [esp + 0x3c]
and edi, dword [esp + 0x20]
and ebx, dword [esp + 0x24]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xb8]
mov edx, dword [esp + 0x34]
adc ecx, dword [esp + 0xbc]
add eax, dword [esp + 0x50]
mov ebx, edx
adc ecx, dword [esp + 0x54]
add eax, 0x9c100d4c
adc ecx, 0x431d67c4
add dword [esp + 0x48], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x30]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x34]
xor eax, ebx
mov ebx, dword [esp + 0x30]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
xor esi, edx
or edi, ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], esi
xor eax, edi
mov esi, ecx
and ecx, dword [esp + 0x30]
or esi, dword [esp + 0x30]
mov edx, dword [esp + 0x44]
and esi, dword [esp + 0x58]
mov edi, edx
or edi, dword [esp + 0x34]
and edx, dword [esp + 0x34]
and edi, dword [esp + 0x5c]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xc8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xc8]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xcc]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xb0]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xb4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
add eax, eax
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xb4]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xb0]
shrd ecx, eax, 6
shr eax, 6
xor edx, ebx
xor esi, edi
xor esi, ecx
mov ecx, dword [esp + 0x14]
xor edx, eax
mov eax, dword [esp + 0x10]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x88]
adc ecx, dword [esp + 0x8c]
add dword [esp + 0xc0], eax
adc dword [esp + 0xc4], ecx
mov esi, dword [esp + 0x4c]
mov edx, dword [esp + 0x48]
mov edi, edx
mov ebx, esi
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov eax, esi
shr eax, 9
or eax, edi
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x48]
xor eax, ebx
mov ebx, dword [esp + 0x4c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x38]
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x3c]
mov edi, edx
xor edi, dword [esp + 0x20]
mov ebx, esi
xor ebx, dword [esp + 0x24]
and edi, dword [esp + 0x48]
and ebx, dword [esp + 0x4c]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xc0]
mov edx, dword [esp + 0x54]
adc ecx, dword [esp + 0xc4]
add eax, dword [esp + 0x28]
mov ebx, edx
adc ecx, dword [esp + 0x2c]
add eax, 0xcb3e42b6
adc ecx, 0x4cc5d4be
add dword [esp + 0x58], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x50]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
shr ebx, 0x1c
mov edi, edx
shld edx, ecx, 0x1e
shl eax, 4
or eax, ebx
xor ebx, ebx
or ebx, edx
shl ecx, 0x1e
shr edi, 2
or edi, ecx
mov ecx, dword [esp + 0x54]
xor eax, ebx
mov ebx, dword [esp + 0x50]
mov edx, ecx
shld ecx, ebx, 0x19
xor esi, edi
shr edx, 7
shl ebx, 0x19
xor edi, edi
or edx, ebx
or edi, ecx
mov ecx, dword [esp + 0x30]
xor esi, edx
mov edx, dword [esp + 0x34]
xor eax, edi
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x50]
and ecx, dword [esp + 0x50]
and esi, dword [esp + 0x40]
mov edi, edx
or edi, dword [esp + 0x54]
and edx, dword [esp + 0x54]
and edi, dword [esp + 0x44]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xd0]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shl edx, 0x18
shr ebx, 8
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xd0]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xd4]
shrd eax, ecx, 7
xor edx, edi
xor esi, ebx
xor esi, eax
mov eax, dword [esp + 0xb8]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xbc]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shl edx, 0xd
shr ebx, 0x13
add eax, eax
or edx, ebx
add eax, eax
shr edi, 0x1d
or edi, eax
mov eax, dword [esp + 0xbc]
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xb8]
shrd ecx, eax, 6
shr eax, 6
xor edx, ebx
xor esi, edi
xor edx, eax
mov eax, dword [esp + 0x10]
xor esi, ecx
add eax, esi
mov ecx, dword [esp + 0x14]
adc ecx, edx
add eax, dword [esp + 0x90]
mov esi, dword [esp + 0x5c]
adc ecx, dword [esp + 0x94]
add dword [esp + 0xc8], eax
mov edx, dword [esp + 0x58]
mov ebx, esi
adc dword [esp + 0xcc], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
xor ecx, ecx
or ecx, ebx
mov eax, esi
shr eax, 9
or eax, edi
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x58]
xor eax, ebx
mov ebx, dword [esp + 0x5c]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x20]
shr ebx, 0xe
xor eax, edi
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x24]
mov edi, edx
xor edi, dword [esp + 0x48]
mov ebx, esi
xor ebx, dword [esp + 0x4c]
and edi, dword [esp + 0x58]
and ebx, dword [esp + 0x5c]
xor edi, edx
xor ebx, esi
mov edx, dword [esp + 0x2c]
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xc8]
mov ebx, edx
adc ecx, dword [esp + 0xcc]
add eax, dword [esp + 0x38]
adc ecx, dword [esp + 0x3c]
add eax, 0xfc657e2a
adc ecx, 0x597f299c
add dword [esp + 0x40], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x28]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shld edx, ecx, 0x1e
shr ebx, 0x1c
shl eax, 4
or eax, ebx
shl ecx, 0x1e
shr edi, 2
xor ebx, ebx
or edi, ecx
mov ecx, dword [esp + 0x2c]
or ebx, edx
xor esi, edi
xor eax, ebx
mov edx, ecx
mov ebx, dword [esp + 0x28]
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x50]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x28]
and ecx, dword [esp + 0x28]
and esi, dword [esp + 0x30]
mov edi, edx
or edi, dword [esp + 0x2c]
and edx, dword [esp + 0x2c]
and edi, dword [esp + 0x34]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xd8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 8
mov edx, eax
xor esi, esi
or esi, edi
mov edi, eax
shrd eax, ecx, 1
shr ebx, 8
shl edx, 0x18
or edx, ebx
shr ecx, 1
xor ebx, ebx
or ebx, eax
mov eax, dword [esp + 0xd8]
shl edi, 0x1f
or edi, ecx
mov ecx, dword [esp + 0xdc]
shrd eax, ecx, 7
xor esi, ebx
xor edx, edi
xor esi, eax
mov eax, dword [esp + 0xc0]
shr ecx, 7
xor edx, ecx
mov ecx, dword [esp + 0xc4]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov dword [esp + 0x10], esi
xor esi, esi
or esi, edi
mov dword [esp + 0x14], edx
mov edx, eax
mov edi, ecx
shld ecx, eax, 3
add eax, eax
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or edi, eax
mov eax, dword [esp + 0xc4]
or ebx, ecx
mov ecx, dword [esp + 0xc0]
xor esi, edi
xor edx, ebx
shrd ecx, eax, 6
xor esi, ecx
mov ecx, dword [esp + 0x14]
shr eax, 6
xor edx, eax
mov eax, dword [esp + 0x10]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0x98]
mov esi, dword [esp + 0x44]
adc ecx, dword [esp + 0x9c]
add dword [esp + 0xd0], eax
mov edx, dword [esp + 0x40]
mov ebx, esi
adc dword [esp + 0xd4], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x40]
xor eax, ebx
mov ebx, dword [esp + 0x44]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x48]
shr ebx, 0xe
xor eax, edi
mov edi, dword [esp + 0x58]
shl esi, 0x12
or esi, ebx
mov ebx, dword [esp + 0x5c]
xor ecx, esi
mov esi, dword [esp + 0x4c]
xor edi, edx
and edi, dword [esp + 0x40]
xor ebx, esi
and ebx, dword [esp + 0x44]
xor edi, edx
mov edx, dword [esp + 0x3c]
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xd0]
mov ebx, edx
adc ecx, dword [esp + 0xd4]
add eax, dword [esp + 0x20]
adc ecx, dword [esp + 0x24]
add eax, 0x3ad6faec
adc ecx, 0x5fcb6fab
add dword [esp + 0x30], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
adc dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x38]
mov edi, ecx
shrd edi, ebx, 0x1c
xor esi, esi
or esi, edi
mov eax, ecx
mov edi, edx
shr ebx, 0x1c
shl eax, 4
shld edx, ecx, 0x1e
or eax, ebx
shr edi, 2
xor ebx, ebx
shl ecx, 0x1e
or edi, ecx
mov ecx, dword [esp + 0x3c]
or ebx, edx
xor eax, ebx
mov ebx, dword [esp + 0x38]
xor esi, edi
mov edx, ecx
shld ecx, ebx, 0x19
xor edi, edi
or edi, ecx
mov ecx, dword [esp + 0x28]
xor eax, edi
shr edx, 7
shl ebx, 0x19
or edx, ebx
xor esi, edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x10], esi
mov esi, ecx
or esi, dword [esp + 0x38]
and ecx, dword [esp + 0x38]
and esi, dword [esp + 0x50]
mov edi, edx
or edi, dword [esp + 0x3c]
and edx, dword [esp + 0x3c]
and edi, dword [esp + 0x54]
or esi, ecx
mov ecx, dword [esp + 0x10]
or edi, edx
add ecx, esi
adc eax, edi
add ecx, dword [esp + 0x18]
adc eax, dword [esp + 0x1c]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xc8]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x13
mov edx, eax
xor esi, esi
or esi, edi
mov edi, ecx
shld ecx, eax, 3
shr ebx, 0x13
add eax, eax
shl edx, 0xd
or edx, ebx
add eax, eax
shr edi, 0x1d
xor ebx, ebx
or ebx, ecx
mov ecx, dword [esp + 0xc8]
add eax, eax
or edi, eax
mov eax, dword [esp + 0xcc]
xor edx, ebx
shrd ecx, eax, 6
xor esi, edi
shr eax, 6
xor edx, eax
mov eax, dword [esp + 0x60]
xor esi, ecx
mov ecx, dword [esp + 0x64]
mov ebx, ecx
mov edi, eax
shrd edi, ebx, 8
mov dword [esp + 0x10], esi
xor esi, esi
mov dword [esp + 0x14], edx
or esi, edi
mov edx, eax
mov edi, eax
shr ebx, 8
shl edx, 0x18
shrd eax, ecx, 1
or edx, ebx
xor ebx, ebx
shl edi, 0x1f
shr ecx, 1
or edi, ecx
or ebx, eax
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x60]
xor esi, ebx
xor edx, edi
shrd ecx, eax, 7
xor esi, ecx
mov ecx, dword [esp + 0x14]
shr eax, 7
xor edx, eax
mov eax, dword [esp + 0x10]
add eax, esi
adc ecx, edx
add eax, dword [esp + 0xa0]
mov esi, dword [esp + 0x34]
adc ecx, dword [esp + 0xa4]
add dword [esp + 0xd8], eax
mov edx, dword [esp + 0x30]
mov ebx, esi
adc dword [esp + 0xdc], ecx
mov edi, edx
shld ebx, edi, 0x17
shl edi, 0x17
mov eax, esi
shr eax, 9
or eax, edi
xor ecx, ecx
or ecx, ebx
xor ebx, ebx
mov edi, edx
shrd edx, esi, 0x12
or ebx, edx
mov edx, dword [esp + 0x30]
xor eax, ebx
mov ebx, dword [esp + 0x34]
shl edi, 0xe
shr esi, 0x12
or edi, esi
xor ecx, edi
xor edi, edi
mov esi, edx
shrd edx, ebx, 0xe
shr ebx, 0xe
or edi, edx
mov edx, dword [esp + 0x58]
shl esi, 0x12
or esi, ebx
xor ecx, esi
mov esi, dword [esp + 0x5c]
xor eax, edi
mov edi, edx
xor edi, dword [esp + 0x40]
mov ebx, esi
xor ebx, dword [esp + 0x44]
and edi, dword [esp + 0x30]
and ebx, dword [esp + 0x34]
xor edi, edx
xor ebx, esi
add eax, edi
adc ecx, ebx
add eax, dword [esp + 0xd8]
adc ecx, dword [esp + 0xdc]
add eax, dword [esp + 0x48]
adc ecx, dword [esp + 0x4c]
add eax, 0x4a475817
adc ecx, 0x6c44198c
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x24]
mov edi, eax
mov ebx, ecx
shrd edi, ebx, 0x1c
mov esi, eax
xor edx, edx
shl esi, 4
shr ebx, 0x1c
or edx, edi
or esi, ebx
mov edi, ecx
shld ecx, eax, 0x1e
shr edi, 2
xor ebx, ebx
or ebx, ecx
xor esi, ebx
mov ebx, dword [esp + 0x20]
shl eax, 0x1e
or edi, eax
mov eax, dword [esp + 0x24]
xor edx, edi
xor edi, edi
mov ecx, eax
shld eax, ebx, 0x19
or edi, eax
mov eax, dword [esp + 0x38]
xor esi, edi
shr ecx, 7
shl ebx, 0x19
or ecx, ebx
xor edx, ecx
mov ecx, dword [esp + 0x3c]
mov ebx, edx
mov edx, eax
or edx, dword [esp + 0x20]
and eax, dword [esp + 0x20]
and edx, dword [esp + 0x28]
mov edi, ecx
or edi, dword [esp + 0x24]
and ecx, dword [esp + 0x24]
and edi, dword [esp + 0x2c]
or edx, eax
mov eax, dword [ebp + 8]
or edi, ecx
mov ecx, dword [esp + 0x18]
add ebx, edx
mov edx, dword [esp + 0x1c]
adc esi, edi
add ebx, ecx
adc esi, edx
add ebx, dword [esp + 0x110]
adc esi, dword [esp + 0x114]
mov dword [eax], ebx
mov dword [eax + 4], esi
mov edi, dword [eax + 4]
mov esi, ebx
mov dword [esp + 0x110], esi
mov dword [esp + 0x48], esi
mov esi, dword [esp + 0x108]
add esi, dword [esp + 0x20]
mov dword [esp + 0x114], edi
mov dword [esp + 0x4c], edi
mov edi, dword [esp + 0x10c]
adc edi, dword [esp + 0x24]
mov dword [eax + 8], esi
mov dword [esp + 0x108], esi
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x100]
add esi, dword [esp + 0x38]
mov dword [eax + 0xc], edi
mov dword [esp + 0x10c], edi
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x104]
adc edi, dword [esp + 0x3c]
mov dword [eax + 0x10], esi
mov dword [esp + 0x100], esi
mov dword [esp + 0x38], esi
mov esi, dword [esp + 0x118]
add esi, dword [esp + 0x28]
mov dword [eax + 0x14], edi
mov dword [esp + 0x104], edi
mov dword [esp + 0x3c], edi
mov edi, dword [esp + 0x11c]
adc edi, dword [esp + 0x2c]
mov dword [eax + 0x18], esi
mov dword [esp + 0x118], esi
mov dword [esp + 0x28], esi
mov esi, dword [esp + 0x128]
mov dword [eax + 0x1c], edi
mov dword [esp + 0x11c], edi
mov dword [esp + 0x2c], edi
add esi, ecx
mov ecx, dword [esp + 0x12c]
adc ecx, edx
add esi, dword [esp + 0x50]
adc ecx, dword [esp + 0x54]
mov dword [eax + 0x20], esi
mov dword [eax + 0x24], ecx
mov edx, dword [eax + 0x24]
mov dword [esp + 0x12c], edx
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0xe8]
add edx, dword [esp + 0x30]
mov ecx, esi
mov dword [esp + 0x128], ecx
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0xec]
adc ecx, dword [esp + 0x34]
mov dword [eax + 0x28], edx
mov dword [eax + 0x2c], ecx
mov ecx, edx
mov edx, dword [eax + 0x2c]
mov dword [esp + 0xec], edx
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0xf0]
add edx, dword [esp + 0x40]
mov dword [esp + 0xe8], ecx
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0xf4]
adc ecx, dword [esp + 0x44]
mov dword [eax + 0x30], edx
mov dword [eax + 0x34], ecx
mov ecx, edx
mov edx, dword [eax + 0x34]
mov dword [esp + 0xf4], edx
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0xf8]
add edx, dword [esp + 0x58]
mov dword [esp + 0xf0], ecx
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0xfc]
adc ecx, dword [esp + 0x5c]
mov dword [eax + 0x38], edx
mov dword [eax + 0x3c], ecx
mov eax, dword [eax + 0x3c]
mov dword [esp + 0xfc], eax
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xe4]
mov ecx, edx
mov dword [esp + 0xf8], ecx
mov dword [esp + 0x58], ecx
cmp eax, dword [esp + 0x124]
jb 0x1c00913a
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret