Function at 0x40e30c
Capabilities:
Hash data using sha512

Disassembly:
pushal
sub esp, 0x40
mov edx, esi
mov ebp, edi
mov ecx, 0x10
mov edi, esp
rep movsd dword es:[edi], dword [esi]
mov ecx, esp
mov esi, ebp
sub esp, 0x80
mov edi, esp
push edx
mov ebx, edi
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov eax, dword [esi]
bswap eax
mov edx, eax
mov eax, dword [esi + 4]
bswap eax
mov dword [edi], eax
mov dword [edi + 4], edx
add esi, 8
add edi, 8
mov esi, ecx
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
add eax, ecx
adc edx, edi
add eax, 0xd728ae22
adc edx, 0x428a2f98
add eax, dword [ebx]
adc edx, dword [ebx + 4]
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
or ecx, dword [esi + 8]
or edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
push ecx
push edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
add eax, ecx
adc edx, edi
add eax, 0x23ef65cd
adc edx, 0x71374491
add eax, dword [ebx + 8]
adc edx, dword [ebx + 0xc]
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
or ecx, dword [esi]
or edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
push ecx
push edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
add eax, ecx
adc edx, edi
add eax, 0xec4d3b2f
adc edx, 0xb5c0fbcf
add eax, dword [ebx + 0x10]
adc edx, dword [ebx + 0x14]
add dword [esi + 8], eax
adc dword [esi + 0xc], edx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
or ecx, dword [esi + 0x38]
or edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
push ecx
push edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
add eax, ecx
adc edx, edi
add eax, 0x8189dbbc
adc edx, 0xe9b5dba5
add eax, dword [ebx + 0x18]
adc edx, dword [ebx + 0x1c]
add dword [esi], eax
adc dword [esi + 4], edx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
or ecx, dword [esi + 0x30]
or edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
push ecx
push edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
and ecx, dword [esi]
and edi, dword [esi + 4]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
add eax, ecx
adc edx, edi
add eax, 0xf348b538
adc edx, 0x3956c25b
add eax, dword [ebx + 0x20]
adc edx, dword [ebx + 0x24]
add dword [esi + 0x38], eax
adc dword [esi + 0x3c], edx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
or ecx, dword [esi + 0x28]
or edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
push ecx
push edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
add eax, ecx
adc edx, edi
add eax, 0xb605d019
adc edx, 0x59f111f1
add eax, dword [ebx + 0x28]
adc edx, dword [ebx + 0x2c]
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
or ecx, dword [esi + 0x20]
or edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
push ecx
push edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
add eax, ecx
adc edx, edi
add eax, 0xaf194f9b
adc edx, 0x923f82a4
add eax, dword [ebx + 0x30]
adc edx, dword [ebx + 0x34]
add dword [esi + 0x28], eax
adc dword [esi + 0x2c], edx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
or ecx, dword [esi + 0x18]
or edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
push ecx
push edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
add eax, ecx
adc edx, edi
add eax, 0xda6d8118
adc edx, 0xab1c5ed5
add eax, dword [ebx + 0x38]
adc edx, dword [ebx + 0x3c]
add dword [esi + 0x20], eax
adc dword [esi + 0x24], edx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
or ecx, dword [esi + 0x10]
or edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
push ecx
push edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
add eax, ecx
adc edx, edi
add eax, 0xa3030242
adc edx, 0xd807aa98
add eax, dword [ebx + 0x40]
adc edx, dword [ebx + 0x44]
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
or ecx, dword [esi + 8]
or edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
push ecx
push edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
add eax, ecx
adc edx, edi
add eax, 0x45706fbe
adc edx, 0x12835b01
add eax, dword [ebx + 0x48]
adc edx, dword [ebx + 0x4c]
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
or ecx, dword [esi]
or edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
push ecx
push edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
add eax, ecx
adc edx, edi
add eax, 0x4ee4b28c
adc edx, 0x243185be
add eax, dword [ebx + 0x50]
adc edx, dword [ebx + 0x54]
add dword [esi + 8], eax
adc dword [esi + 0xc], edx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
or ecx, dword [esi + 0x38]
or edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
push ecx
push edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
add eax, ecx
adc edx, edi
add eax, 0xd5ffb4e2
adc edx, 0x550c7dc3
add eax, dword [ebx + 0x58]
adc edx, dword [ebx + 0x5c]
add dword [esi], eax
adc dword [esi + 4], edx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
or ecx, dword [esi + 0x30]
or edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
push ecx
push edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
and ecx, dword [esi]
and edi, dword [esi + 4]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
add eax, ecx
adc edx, edi
add eax, 0xf27b896f
adc edx, 0x72be5d74
add eax, dword [ebx + 0x60]
adc edx, dword [ebx + 0x64]
add dword [esi + 0x38], eax
adc dword [esi + 0x3c], edx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
or ecx, dword [esi + 0x28]
or edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
push ecx
push edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
add eax, ecx
adc edx, edi
add eax, 0x3b1696b1
adc edx, 0x80deb1fe
add eax, dword [ebx + 0x68]
adc edx, dword [ebx + 0x6c]
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
or ecx, dword [esi + 0x20]
or edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
push ecx
push edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
add eax, ecx
adc edx, edi
add eax, 0x25c71235
adc edx, 0x9bdc06a7
add eax, dword [ebx + 0x70]
adc edx, dword [ebx + 0x74]
add dword [esi + 0x28], eax
adc dword [esi + 0x2c], edx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
or ecx, dword [esi + 0x18]
or edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
push ecx
push edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
add eax, ecx
adc edx, edi
add eax, 0xcf692694
adc edx, 0xc19bf174
add eax, dword [ebx + 0x78]
adc edx, dword [ebx + 0x7c]
add dword [esi + 0x20], eax
adc dword [esi + 0x24], edx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
or ecx, dword [esi + 0x10]
or edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
push ecx
push edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
add eax, ecx
adc edx, edi
add eax, 0x9ef14ad2
adc edx, 0xe49b69c1
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x48]
adc edi, dword [ebx + 0x4c]
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx]
adc edi, dword [ebx + 4]
mov dword [ebx], ecx
mov dword [ebx + 4], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
or ecx, dword [esi + 8]
or edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
push ecx
push edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
add eax, ecx
adc edx, edi
add eax, 0x384f25e3
adc edx, 0xefbe4786
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x50]
adc edi, dword [ebx + 0x54]
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 8]
adc edi, dword [ebx + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
or ecx, dword [esi]
or edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
push ecx
push edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
add eax, ecx
adc edx, edi
add eax, 0x8b8cd5b5
adc edx, 0xfc19dc6
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x58]
adc edi, dword [ebx + 0x5c]
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x10]
adc edi, dword [ebx + 0x14]
mov dword [ebx + 0x10], ecx
mov dword [ebx + 0x14], edi
add eax, ecx
adc edx, edi
add dword [esi + 8], eax
adc dword [esi + 0xc], edx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
or ecx, dword [esi + 0x38]
or edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
push ecx
push edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
add eax, ecx
adc edx, edi
add eax, 0x77ac9c65
adc edx, 0x240ca1cc
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x60]
adc edi, dword [ebx + 0x64]
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x18]
adc edi, dword [ebx + 0x1c]
mov dword [ebx + 0x18], ecx
mov dword [ebx + 0x1c], edi
add eax, ecx
adc edx, edi
add dword [esi], eax
adc dword [esi + 4], edx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
or ecx, dword [esi + 0x30]
or edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
push ecx
push edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
and ecx, dword [esi]
and edi, dword [esi + 4]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
add eax, ecx
adc edx, edi
add eax, 0x592b0275
adc edx, 0x2de92c6f
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x68]
adc edi, dword [ebx + 0x6c]
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x20]
adc edi, dword [ebx + 0x24]
mov dword [ebx + 0x20], ecx
mov dword [ebx + 0x24], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x38], eax
adc dword [esi + 0x3c], edx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
or ecx, dword [esi + 0x28]
or edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
push ecx
push edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
add eax, ecx
adc edx, edi
add eax, 0x6ea6e483
adc edx, 0x4a7484aa
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x70]
adc edi, dword [ebx + 0x74]
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x28]
adc edi, dword [ebx + 0x2c]
mov dword [ebx + 0x28], ecx
mov dword [ebx + 0x2c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
or ecx, dword [esi + 0x20]
or edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
push ecx
push edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
add eax, ecx
adc edx, edi
add eax, 0xbd41fbd4
adc edx, 0x5cb0a9dc
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x78]
adc edi, dword [ebx + 0x7c]
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x30]
adc edi, dword [ebx + 0x34]
mov dword [ebx + 0x30], ecx
mov dword [ebx + 0x34], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x28], eax
adc dword [esi + 0x2c], edx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
or ecx, dword [esi + 0x18]
or edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
push ecx
push edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
add eax, ecx
adc edx, edi
add eax, 0x831153b5
adc edx, 0x76f988da
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx]
adc edi, dword [ebx + 4]
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x38]
adc edi, dword [ebx + 0x3c]
mov dword [ebx + 0x38], ecx
mov dword [ebx + 0x3c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x20], eax
adc dword [esi + 0x24], edx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
or ecx, dword [esi + 0x10]
or edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
push ecx
push edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
add eax, ecx
adc edx, edi
add eax, 0xee66dfab
adc edx, 0x983e5152
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 8]
adc edi, dword [ebx + 0xc]
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x40]
adc edi, dword [ebx + 0x44]
mov dword [ebx + 0x40], ecx
mov dword [ebx + 0x44], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
or ecx, dword [esi + 8]
or edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
push ecx
push edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
add eax, ecx
adc edx, edi
add eax, 0x2db43210
adc edx, 0xa831c66d
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x10]
adc edi, dword [ebx + 0x14]
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x48]
adc edi, dword [ebx + 0x4c]
mov dword [ebx + 0x48], ecx
mov dword [ebx + 0x4c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
or ecx, dword [esi]
or edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
push ecx
push edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
add eax, ecx
adc edx, edi
add eax, 0x98fb213f
adc edx, 0xb00327c8
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x18]
adc edi, dword [ebx + 0x1c]
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x50]
adc edi, dword [ebx + 0x54]
mov dword [ebx + 0x50], ecx
mov dword [ebx + 0x54], edi
add eax, ecx
adc edx, edi
add dword [esi + 8], eax
adc dword [esi + 0xc], edx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
or ecx, dword [esi + 0x38]
or edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
push ecx
push edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
add eax, ecx
adc edx, edi
add eax, 0xbeef0ee4
adc edx, 0xbf597fc7
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x20]
adc edi, dword [ebx + 0x24]
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x58]
adc edi, dword [ebx + 0x5c]
mov dword [ebx + 0x58], ecx
mov dword [ebx + 0x5c], edi
add eax, ecx
adc edx, edi
add dword [esi], eax
adc dword [esi + 4], edx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
or ecx, dword [esi + 0x30]
or edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
push ecx
push edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
and ecx, dword [esi]
and edi, dword [esi + 4]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
add eax, ecx
adc edx, edi
add eax, 0x3da88fc2
adc edx, 0xc6e00bf3
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x28]
adc edi, dword [ebx + 0x2c]
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x60]
adc edi, dword [ebx + 0x64]
mov dword [ebx + 0x60], ecx
mov dword [ebx + 0x64], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x38], eax
adc dword [esi + 0x3c], edx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
or ecx, dword [esi + 0x28]
or edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
push ecx
push edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
add eax, ecx
adc edx, edi
add eax, 0x930aa725
adc edx, 0xd5a79147
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x30]
adc edi, dword [ebx + 0x34]
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x68]
adc edi, dword [ebx + 0x6c]
mov dword [ebx + 0x68], ecx
mov dword [ebx + 0x6c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
or ecx, dword [esi + 0x20]
or edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
push ecx
push edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
add eax, ecx
adc edx, edi
add eax, 0xe003826f
adc edx, 0x6ca6351
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x38]
adc edi, dword [ebx + 0x3c]
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x70]
adc edi, dword [ebx + 0x74]
mov dword [ebx + 0x70], ecx
mov dword [ebx + 0x74], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x28], eax
adc dword [esi + 0x2c], edx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
or ecx, dword [esi + 0x18]
or edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
push ecx
push edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
add eax, ecx
adc edx, edi
add eax, 0xa0e6e70
adc edx, 0x14292967
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x40]
adc edi, dword [ebx + 0x44]
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x78]
adc edi, dword [ebx + 0x7c]
mov dword [ebx + 0x78], ecx
mov dword [ebx + 0x7c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x20], eax
adc dword [esi + 0x24], edx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
or ecx, dword [esi + 0x10]
or edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
push ecx
push edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
add eax, ecx
adc edx, edi
add eax, 0x46d22ffc
adc edx, 0x27b70a85
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x48]
adc edi, dword [ebx + 0x4c]
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx]
adc edi, dword [ebx + 4]
mov dword [ebx], ecx
mov dword [ebx + 4], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
or ecx, dword [esi + 8]
or edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
push ecx
push edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
add eax, ecx
adc edx, edi
add eax, 0x5c26c926
adc edx, 0x2e1b2138
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x50]
adc edi, dword [ebx + 0x54]
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 8]
adc edi, dword [ebx + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
or ecx, dword [esi]
or edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
push ecx
push edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
add eax, ecx
adc edx, edi
add eax, 0x5ac42aed
adc edx, 0x4d2c6dfc
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x58]
adc edi, dword [ebx + 0x5c]
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x10]
adc edi, dword [ebx + 0x14]
mov dword [ebx + 0x10], ecx
mov dword [ebx + 0x14], edi
add eax, ecx
adc edx, edi
add dword [esi + 8], eax
adc dword [esi + 0xc], edx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
or ecx, dword [esi + 0x38]
or edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
push ecx
push edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
add eax, ecx
adc edx, edi
add eax, 0x9d95b3df
adc edx, 0x53380d13
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x60]
adc edi, dword [ebx + 0x64]
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x18]
adc edi, dword [ebx + 0x1c]
mov dword [ebx + 0x18], ecx
mov dword [ebx + 0x1c], edi
add eax, ecx
adc edx, edi
add dword [esi], eax
adc dword [esi + 4], edx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
or ecx, dword [esi + 0x30]
or edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
push ecx
push edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
and ecx, dword [esi]
and edi, dword [esi + 4]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
add eax, ecx
adc edx, edi
add eax, 0x8baf63de
adc edx, 0x650a7354
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x68]
adc edi, dword [ebx + 0x6c]
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x20]
adc edi, dword [ebx + 0x24]
mov dword [ebx + 0x20], ecx
mov dword [ebx + 0x24], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x38], eax
adc dword [esi + 0x3c], edx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
or ecx, dword [esi + 0x28]
or edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
push ecx
push edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
add eax, ecx
adc edx, edi
add eax, 0x3c77b2a8
adc edx, 0x766a0abb
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x70]
adc edi, dword [ebx + 0x74]
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x28]
adc edi, dword [ebx + 0x2c]
mov dword [ebx + 0x28], ecx
mov dword [ebx + 0x2c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
or ecx, dword [esi + 0x20]
or edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
push ecx
push edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
add eax, ecx
adc edx, edi
add eax, 0x47edaee6
adc edx, 0x81c2c92e
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x78]
adc edi, dword [ebx + 0x7c]
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x30]
adc edi, dword [ebx + 0x34]
mov dword [ebx + 0x30], ecx
mov dword [ebx + 0x34], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x28], eax
adc dword [esi + 0x2c], edx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
or ecx, dword [esi + 0x18]
or edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
push ecx
push edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
add eax, ecx
adc edx, edi
add eax, 0x1482353b
adc edx, 0x92722c85
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx]
adc edi, dword [ebx + 4]
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x38]
adc edi, dword [ebx + 0x3c]
mov dword [ebx + 0x38], ecx
mov dword [ebx + 0x3c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x20], eax
adc dword [esi + 0x24], edx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
or ecx, dword [esi + 0x10]
or edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
push ecx
push edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
add eax, ecx
adc edx, edi
add eax, 0x4cf10364
adc edx, 0xa2bfe8a1
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 8]
adc edi, dword [ebx + 0xc]
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x40]
adc edi, dword [ebx + 0x44]
mov dword [ebx + 0x40], ecx
mov dword [ebx + 0x44], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
or ecx, dword [esi + 8]
or edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
push ecx
push edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
add eax, ecx
adc edx, edi
add eax, 0xbc423001
adc edx, 0xa81a664b
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x10]
adc edi, dword [ebx + 0x14]
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x48]
adc edi, dword [ebx + 0x4c]
mov dword [ebx + 0x48], ecx
mov dword [ebx + 0x4c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
or ecx, dword [esi]
or edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
push ecx
push edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
add eax, ecx
adc edx, edi
add eax, 0xd0f89791
adc edx, 0xc24b8b70
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x18]
adc edi, dword [ebx + 0x1c]
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x50]
adc edi, dword [ebx + 0x54]
mov dword [ebx + 0x50], ecx
mov dword [ebx + 0x54], edi
add eax, ecx
adc edx, edi
add dword [esi + 8], eax
adc dword [esi + 0xc], edx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
or ecx, dword [esi + 0x38]
or edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
push ecx
push edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
add eax, ecx
adc edx, edi
add eax, 0x654be30
adc edx, 0xc76c51a3
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x20]
adc edi, dword [ebx + 0x24]
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x58]
adc edi, dword [ebx + 0x5c]
mov dword [ebx + 0x58], ecx
mov dword [ebx + 0x5c], edi
add eax, ecx
adc edx, edi
add dword [esi], eax
adc dword [esi + 4], edx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
or ecx, dword [esi + 0x30]
or edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
push ecx
push edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
and ecx, dword [esi]
and edi, dword [esi + 4]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
add eax, ecx
adc edx, edi
add eax, 0xd6ef5218
adc edx, 0xd192e819
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x28]
adc edi, dword [ebx + 0x2c]
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x60]
adc edi, dword [ebx + 0x64]
mov dword [ebx + 0x60], ecx
mov dword [ebx + 0x64], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x38], eax
adc dword [esi + 0x3c], edx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
or ecx, dword [esi + 0x28]
or edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
push ecx
push edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
add eax, ecx
adc edx, edi
add eax, 0x5565a910
adc edx, 0xd6990624
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x30]
adc edi, dword [ebx + 0x34]
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x68]
adc edi, dword [ebx + 0x6c]
mov dword [ebx + 0x68], ecx
mov dword [ebx + 0x6c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
or ecx, dword [esi + 0x20]
or edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
push ecx
push edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
add eax, ecx
adc edx, edi
add eax, 0x5771202a
adc edx, 0xf40e3585
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x38]
adc edi, dword [ebx + 0x3c]
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x70]
adc edi, dword [ebx + 0x74]
mov dword [ebx + 0x70], ecx
mov dword [ebx + 0x74], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x28], eax
adc dword [esi + 0x2c], edx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
or ecx, dword [esi + 0x18]
or edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
push ecx
push edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
add eax, ecx
adc edx, edi
add eax, 0x32bbd1b8
adc edx, 0x106aa070
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x40]
adc edi, dword [ebx + 0x44]
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x78]
adc edi, dword [ebx + 0x7c]
mov dword [ebx + 0x78], ecx
mov dword [ebx + 0x7c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x20], eax
adc dword [esi + 0x24], edx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
or ecx, dword [esi + 0x10]
or edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
push ecx
push edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
add eax, ecx
adc edx, edi
add eax, 0xb8d2d0c8
adc edx, 0x19a4c116
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x48]
adc edi, dword [ebx + 0x4c]
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx]
adc edi, dword [ebx + 4]
mov dword [ebx], ecx
mov dword [ebx + 4], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
or ecx, dword [esi + 8]
or edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
push ecx
push edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
add eax, ecx
adc edx, edi
add eax, 0x5141ab53
adc edx, 0x1e376c08
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x50]
adc edi, dword [ebx + 0x54]
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 8]
adc edi, dword [ebx + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
or ecx, dword [esi]
or edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
push ecx
push edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
add eax, ecx
adc edx, edi
add eax, 0xdf8eeb99
adc edx, 0x2748774c
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x58]
adc edi, dword [ebx + 0x5c]
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x10]
adc edi, dword [ebx + 0x14]
mov dword [ebx + 0x10], ecx
mov dword [ebx + 0x14], edi
add eax, ecx
adc edx, edi
add dword [esi + 8], eax
adc dword [esi + 0xc], edx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
or ecx, dword [esi + 0x38]
or edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
push ecx
push edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
add eax, ecx
adc edx, edi
add eax, 0xe19b48a8
adc edx, 0x34b0bcb5
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x60]
adc edi, dword [ebx + 0x64]
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x18]
adc edi, dword [ebx + 0x1c]
mov dword [ebx + 0x18], ecx
mov dword [ebx + 0x1c], edi
add eax, ecx
adc edx, edi
add dword [esi], eax
adc dword [esi + 4], edx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
or ecx, dword [esi + 0x30]
or edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
push ecx
push edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
and ecx, dword [esi]
and edi, dword [esi + 4]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
add eax, ecx
adc edx, edi
add eax, 0xc5c95a63
adc edx, 0x391c0cb3
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x68]
adc edi, dword [ebx + 0x6c]
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x20]
adc edi, dword [ebx + 0x24]
mov dword [ebx + 0x20], ecx
mov dword [ebx + 0x24], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x38], eax
adc dword [esi + 0x3c], edx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
or ecx, dword [esi + 0x28]
or edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
push ecx
push edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
add eax, ecx
adc edx, edi
add eax, 0xe3418acb
adc edx, 0x4ed8aa4a
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x70]
adc edi, dword [ebx + 0x74]
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x28]
adc edi, dword [ebx + 0x2c]
mov dword [ebx + 0x28], ecx
mov dword [ebx + 0x2c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
or ecx, dword [esi + 0x20]
or edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
push ecx
push edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
add eax, ecx
adc edx, edi
add eax, 0x7763e373
adc edx, 0x5b9cca4f
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x78]
adc edi, dword [ebx + 0x7c]
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x30]
adc edi, dword [ebx + 0x34]
mov dword [ebx + 0x30], ecx
mov dword [ebx + 0x34], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x28], eax
adc dword [esi + 0x2c], edx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
or ecx, dword [esi + 0x18]
or edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
push ecx
push edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
add eax, ecx
adc edx, edi
add eax, 0xd6b2b8a3
adc edx, 0x682e6ff3
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx]
adc edi, dword [ebx + 4]
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x38]
adc edi, dword [ebx + 0x3c]
mov dword [ebx + 0x38], ecx
mov dword [ebx + 0x3c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x20], eax
adc dword [esi + 0x24], edx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
or ecx, dword [esi + 0x10]
or edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
push ecx
push edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
add eax, ecx
adc edx, edi
add eax, 0x5defb2fc
adc edx, 0x748f82ee
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 8]
adc edi, dword [ebx + 0xc]
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x40]
adc edi, dword [ebx + 0x44]
mov dword [ebx + 0x40], ecx
mov dword [ebx + 0x44], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
or ecx, dword [esi + 8]
or edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
push ecx
push edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
add eax, ecx
adc edx, edi
add eax, 0x43172f60
adc edx, 0x78a5636f
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x10]
adc edi, dword [ebx + 0x14]
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x48]
adc edi, dword [ebx + 0x4c]
mov dword [ebx + 0x48], ecx
mov dword [ebx + 0x4c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
or ecx, dword [esi]
or edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
push ecx
push edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
add eax, ecx
adc edx, edi
add eax, 0xa1f0ab72
adc edx, 0x84c87814
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x18]
adc edi, dword [ebx + 0x1c]
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x50]
adc edi, dword [ebx + 0x54]
mov dword [ebx + 0x50], ecx
mov dword [ebx + 0x54], edi
add eax, ecx
adc edx, edi
add dword [esi + 8], eax
adc dword [esi + 0xc], edx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
or ecx, dword [esi + 0x38]
or edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
push ecx
push edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
add eax, ecx
adc edx, edi
add eax, 0x1a6439ec
adc edx, 0x8cc70208
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x20]
adc edi, dword [ebx + 0x24]
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x58]
adc edi, dword [ebx + 0x5c]
mov dword [ebx + 0x58], ecx
mov dword [ebx + 0x5c], edi
add eax, ecx
adc edx, edi
add dword [esi], eax
adc dword [esi + 4], edx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
or ecx, dword [esi + 0x30]
or edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
push ecx
push edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
and ecx, dword [esi]
and edi, dword [esi + 4]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
add eax, ecx
adc edx, edi
add eax, 0x23631e28
adc edx, 0x90befffa
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x28]
adc edi, dword [ebx + 0x2c]
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x60]
adc edi, dword [ebx + 0x64]
mov dword [ebx + 0x60], ecx
mov dword [ebx + 0x64], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x38], eax
adc dword [esi + 0x3c], edx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
or ecx, dword [esi + 0x28]
or edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
push ecx
push edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
add eax, ecx
adc edx, edi
add eax, 0xde82bde9
adc edx, 0xa4506ceb
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x30]
adc edi, dword [ebx + 0x34]
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x68]
adc edi, dword [ebx + 0x6c]
mov dword [ebx + 0x68], ecx
mov dword [ebx + 0x6c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
or ecx, dword [esi + 0x20]
or edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
push ecx
push edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
add eax, ecx
adc edx, edi
add eax, 0xb2c67915
adc edx, 0xbef9a3f7
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x38]
adc edi, dword [ebx + 0x3c]
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x70]
adc edi, dword [ebx + 0x74]
mov dword [ebx + 0x70], ecx
mov dword [ebx + 0x74], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x28], eax
adc dword [esi + 0x2c], edx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
or ecx, dword [esi + 0x18]
or edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
push ecx
push edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
add eax, ecx
adc edx, edi
add eax, 0xe372532b
adc edx, 0xc67178f2
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x40]
adc edi, dword [ebx + 0x44]
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x78]
adc edi, dword [ebx + 0x7c]
mov dword [ebx + 0x78], ecx
mov dword [ebx + 0x7c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x20], eax
adc dword [esi + 0x24], edx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
or ecx, dword [esi + 0x10]
or edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
push ecx
push edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
add eax, ecx
adc edx, edi
add eax, 0xea26619c
adc edx, 0xca273ece
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x48]
adc edi, dword [ebx + 0x4c]
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx]
adc edi, dword [ebx + 4]
mov dword [ebx], ecx
mov dword [ebx + 4], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
or ecx, dword [esi + 8]
or edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
push ecx
push edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
add eax, ecx
adc edx, edi
add eax, 0x21c0c207
adc edx, 0xd186b8c7
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x50]
adc edi, dword [ebx + 0x54]
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 8]
adc edi, dword [ebx + 0xc]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
or ecx, dword [esi]
or edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
push ecx
push edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
add eax, ecx
adc edx, edi
add eax, 0xcde0eb1e
adc edx, 0xeada7dd6
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x58]
adc edi, dword [ebx + 0x5c]
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x10]
adc edi, dword [ebx + 0x14]
mov dword [ebx + 0x10], ecx
mov dword [ebx + 0x14], edi
add eax, ecx
adc edx, edi
add dword [esi + 8], eax
adc dword [esi + 0xc], edx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
or ecx, dword [esi + 0x38]
or edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
push ecx
push edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
add eax, ecx
adc edx, edi
add eax, 0xee6ed178
adc edx, 0xf57d4f7f
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x60]
adc edi, dword [ebx + 0x64]
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 8]
mov edi, dword [ebx + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x18]
adc edi, dword [ebx + 0x1c]
mov dword [ebx + 0x18], ecx
mov dword [ebx + 0x1c], edi
add eax, ecx
adc edx, edi
add dword [esi], eax
adc dword [esi + 4], edx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
or ecx, dword [esi + 0x30]
or edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
push ecx
push edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
and ecx, dword [esi]
and edi, dword [esi + 4]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
add eax, ecx
adc edx, edi
add eax, 0x72176fba
adc edx, 0x6f067aa
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x68]
adc edi, dword [ebx + 0x6c]
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x20]
adc edi, dword [ebx + 0x24]
mov dword [ebx + 0x20], ecx
mov dword [ebx + 0x24], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x38], eax
adc dword [esi + 0x3c], edx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
or ecx, dword [esi + 0x28]
or edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
push ecx
push edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
add eax, ecx
adc edx, edi
add eax, 0xa2c898a6
adc edx, 0xa637dc5
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x70]
adc edi, dword [ebx + 0x74]
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x18]
mov edi, dword [ebx + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x28]
adc edi, dword [ebx + 0x2c]
mov dword [ebx + 0x28], ecx
mov dword [ebx + 0x2c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
or ecx, dword [esi + 0x20]
or edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
push ecx
push edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
add eax, ecx
adc edx, edi
add eax, 0xbef90dae
adc edx, 0x113f9804
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x78]
adc edi, dword [ebx + 0x7c]
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x20]
mov edi, dword [ebx + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x30]
adc edi, dword [ebx + 0x34]
mov dword [ebx + 0x30], ecx
mov dword [ebx + 0x34], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x28], eax
adc dword [esi + 0x2c], edx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
or ecx, dword [esi + 0x18]
or edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
push ecx
push edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
add eax, ecx
adc edx, edi
add eax, 0x131c471b
adc edx, 0x1b710b35
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx]
adc edi, dword [ebx + 4]
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x28]
mov edi, dword [ebx + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x38]
adc edi, dword [ebx + 0x3c]
mov dword [ebx + 0x38], ecx
mov dword [ebx + 0x3c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x20], eax
adc dword [esi + 0x24], edx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
or ecx, dword [esi + 0x10]
or edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
push ecx
push edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
add eax, ecx
adc edx, edi
add eax, 0x23047d84
adc edx, 0x28db77f5
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 8]
adc edi, dword [ebx + 0xc]
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x30]
mov edi, dword [ebx + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x40]
adc edi, dword [ebx + 0x44]
mov dword [ebx + 0x40], ecx
mov dword [ebx + 0x44], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
or ecx, dword [esi + 8]
or edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
push ecx
push edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x28]
xor edi, dword [esi + 0x2c]
add eax, ecx
adc edx, edi
add eax, 0x40c72493
adc edx, 0x32caab7b
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x10]
adc edi, dword [ebx + 0x14]
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x38]
mov edi, dword [ebx + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x48]
adc edi, dword [ebx + 0x4c]
mov dword [ebx + 0x48], ecx
mov dword [ebx + 0x4c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x10], eax
adc dword [esi + 0x14], edx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
or ecx, dword [esi]
or edi, dword [esi + 4]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
push ecx
push edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
xor ecx, dword [esi + 0x20]
xor edi, dword [esi + 0x24]
add eax, ecx
adc edx, edi
add eax, 0x15c9bebc
adc edx, 0x3c9ebe0a
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x18]
adc edi, dword [ebx + 0x1c]
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x40]
mov edi, dword [ebx + 0x44]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x50]
adc edi, dword [ebx + 0x54]
mov dword [ebx + 0x50], ecx
mov dword [ebx + 0x54], edi
add eax, ecx
adc edx, edi
add dword [esi + 8], eax
adc dword [esi + 0xc], edx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
or ecx, dword [esi + 0x38]
or edi, dword [esi + 0x3c]
and ecx, dword [esi]
and edi, dword [esi + 4]
push ecx
push edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
and ecx, dword [esi + 8]
and edi, dword [esi + 0xc]
xor ecx, dword [esi + 0x18]
xor edi, dword [esi + 0x1c]
add eax, ecx
adc edx, edi
add eax, 0x9c100d4c
adc edx, 0x431d67c4
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x20]
adc edi, dword [ebx + 0x24]
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x58]
adc edi, dword [ebx + 0x5c]
mov dword [ebx + 0x58], ecx
mov dword [ebx + 0x5c], edi
add eax, ecx
adc edx, edi
add dword [esi], eax
adc dword [esi + 4], edx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
or ecx, dword [esi + 0x30]
or edi, dword [esi + 0x34]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
push ecx
push edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
and ecx, dword [esi]
and edi, dword [esi + 4]
xor ecx, dword [esi + 0x10]
xor edi, dword [esi + 0x14]
add eax, ecx
adc edx, edi
add eax, 0xcb3e42b6
adc edx, 0x4cc5d4be
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x28]
adc edi, dword [ebx + 0x2c]
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x50]
mov edi, dword [ebx + 0x54]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x60]
adc edi, dword [ebx + 0x64]
mov dword [ebx + 0x60], ecx
mov dword [ebx + 0x64], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x38], eax
adc dword [esi + 0x3c], edx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
or ecx, dword [esi + 0x28]
or edi, dword [esi + 0x2c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
push ecx
push edi
mov ecx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
and ecx, dword [esi + 0x38]
and edi, dword [esi + 0x3c]
xor ecx, dword [esi + 8]
xor edi, dword [esi + 0xc]
add eax, ecx
adc edx, edi
add eax, 0xfc657e2a
adc edx, 0x597f299c
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x30]
adc edi, dword [ebx + 0x34]
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x58]
mov edi, dword [ebx + 0x5c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x68]
adc edi, dword [ebx + 0x6c]
mov dword [ebx + 0x68], ecx
mov dword [ebx + 0x6c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
or ecx, dword [esi + 0x20]
or edi, dword [esi + 0x24]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
push ecx
push edi
mov ecx, dword [esi + 0x18]
mov edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi]
mov edi, dword [esi + 4]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
and ecx, dword [esi + 0x30]
and edi, dword [esi + 0x34]
xor ecx, dword [esi]
xor edi, dword [esi + 4]
add eax, ecx
adc edx, edi
add eax, 0x3ad6faec
adc edx, 0x5fcb6fab
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x78]
mov edi, dword [ebx + 0x7c]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x38]
adc edi, dword [ebx + 0x3c]
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x60]
mov edi, dword [ebx + 0x64]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x70]
adc edi, dword [ebx + 0x74]
mov dword [ebx + 0x70], ecx
mov dword [ebx + 0x74], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x28], eax
adc dword [esi + 0x2c], edx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
or ecx, dword [esi + 0x18]
or edi, dword [esi + 0x1c]
and ecx, dword [esi + 0x20]
and edi, dword [esi + 0x24]
push ecx
push edi
mov ecx, dword [esi + 0x10]
mov edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
mov eax, dword [esi]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 9
xchg dword [esp], ecx
shld ecx, ebp, 0x17
shl ebp, 0x17
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x12
shr edi, 0x12
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xe
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 0x28]
mov edi, dword [esi + 0x2c]
mov ebp, ecx
push edi
shrd ecx, edi, 0xe
shr edi, 0xe
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x12
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 0x38]
mov edi, dword [esi + 0x3c]
xor ecx, dword [esi + 0x30]
xor edi, dword [esi + 0x34]
and ecx, dword [esi + 0x28]
and edi, dword [esi + 0x2c]
xor ecx, dword [esi + 0x38]
xor edi, dword [esi + 0x3c]
add eax, ecx
adc edx, edi
add eax, 0x4a475817
adc edx, 0x6c44198c
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
shrd ecx, edi, 7
shr edi, 7
push edi
push ecx
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 8
shr edi, 8
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x18
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov ebp, ecx
push edi
shrd ecx, edi, 1
shr edi, 1
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0x1f
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x40]
adc edi, dword [ebx + 0x44]
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
shrd ecx, edi, 6
shr edi, 6
push edi
push ecx
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 0x1d
xchg dword [esp], ecx
shld ecx, ebp, 3
shl ebp, 3
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [ebx + 0x68]
mov edi, dword [ebx + 0x6c]
mov ebp, ecx
push edi
shrd ecx, edi, 0x13
shr edi, 0x13
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 0xd
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
add ecx, dword [ebx + 0x78]
adc edi, dword [ebx + 0x7c]
mov dword [ebx + 0x78], ecx
mov dword [ebx + 0x7c], edi
add eax, ecx
adc edx, edi
add dword [esi + 0x20], eax
adc dword [esi + 0x24], edx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 7
xchg dword [esp], ecx
shld ecx, ebp, 0x19
shl ebp, 0x19
or edi, ecx
pop ecx
or ecx, ebp
push edi
push ecx
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
mov ecx, edi
xor edi, edi
shr ecx, 2
xchg dword [esp], ecx
shld ecx, ebp, 0x1e
shl ebp, 0x1e
or edi, ecx
pop ecx
or ecx, ebp
xor dword [esp], ecx
xor dword [esp + 4], edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
mov ebp, ecx
push edi
shrd ecx, edi, 0x1c
shr edi, 0x1c
xchg dword [esp], ecx
mov ecx, ebp
xor ebp, ebp
shl ecx, 4
or edi, ecx
pop ecx
or ecx, ebp
xor ecx, dword [esp]
xor edi, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
or ecx, dword [esi + 0x10]
or edi, dword [esi + 0x14]
and ecx, dword [esi + 0x18]
and edi, dword [esi + 0x1c]
push ecx
push edi
mov ecx, dword [esi + 8]
mov edi, dword [esi + 0xc]
and ecx, dword [esi + 0x10]
and edi, dword [esi + 0x14]
or edi, dword [esp]
or ecx, dword [esp + 4]
add esp, 8
add eax, ecx
adc edx, edi
mov dword [esi], eax
mov dword [esi + 4], edx
pop edi
add esp, 0x80
mov esi, esp
mov eax, dword [esi]
add dword [edi], eax
mov eax, dword [esi + 4]
adc dword [edi + 4], eax
add esi, 8
mov eax, dword [esi]
add dword [edi + 8], eax
mov eax, dword [esi + 4]
adc dword [edi + 0xc], eax
add esi, 8
mov eax, dword [esi]
add dword [edi + 0x10], eax
mov eax, dword [esi + 4]
adc dword [edi + 0x14], eax
add esi, 8
mov eax, dword [esi]
add dword [edi + 0x18], eax
mov eax, dword [esi + 4]
adc dword [edi + 0x1c], eax
add esi, 8
mov eax, dword [esi]
add dword [edi + 0x20], eax
mov eax, dword [esi + 4]
adc dword [edi + 0x24], eax
add esi, 8
mov eax, dword [esi]
add dword [edi + 0x28], eax
mov eax, dword [esi + 4]
adc dword [edi + 0x2c], eax
add esi, 8
mov eax, dword [esi]
add dword [edi + 0x30], eax
mov eax, dword [esi + 4]
adc dword [edi + 0x34], eax
add esi, 8
mov eax, dword [esi]
add dword [edi + 0x38], eax
mov eax, dword [esi + 4]
adc dword [edi + 0x3c], eax
add esi, 8
add esp, 0x40
popal
ret