Function at 0x41a7c3
Capabilities:
Hash data using tiger

Disassembly:
pushal
sub esp, 0x18
mov ebx, esi
mov edx, edi
mov edi, esp
mov ebp, edi
mov ecx, 6
rep movsd dword es:[edi], dword [esi]
mov ebp, esp
sub esp, 0x40
mov esi, esp
push ebx
mov edi, edx
push esi
mov eax, dword [edi]
mov ebx, dword [edi + 4]
xor dword [ebp + 0x10], eax
xor dword [ebp + 0x14], ebx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
sub dword [ebp], ecx
sbb dword [ebp + 4], esi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 8]
adc esi, dword [ebp + 0xc]
push esi
push ecx
shld esi, ecx, 2
shl ecx, 2
add ecx, dword [esp]
adc esi, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], esi
mov eax, dword [edi + 8]
mov ebx, dword [edi + 0xc]
xor dword [ebp], eax
xor dword [ebp + 4], ebx
mov eax, dword [ebp]
mov edx, dword [ebp + 4]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
sub dword [ebp + 8], ecx
sbb dword [ebp + 0xc], esi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 0x10]
adc esi, dword [ebp + 0x14]
push esi
push ecx
shld esi, ecx, 2
shl ecx, 2
add ecx, dword [esp]
adc esi, dword [esp + 4]
add esp, 8
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x14], esi
mov eax, dword [edi + 0x10]
mov ebx, dword [edi + 0x14]
xor dword [ebp + 8], eax
xor dword [ebp + 0xc], ebx
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
sub dword [ebp + 0x10], ecx
sbb dword [ebp + 0x14], esi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp]
adc esi, dword [ebp + 4]
push esi
push ecx
shld esi, ecx, 2
shl ecx, 2
add ecx, dword [esp]
adc esi, dword [esp + 4]
add esp, 8
mov dword [ebp], ecx
mov dword [ebp + 4], esi
mov eax, dword [edi + 0x18]
mov ebx, dword [edi + 0x1c]
xor dword [ebp + 0x10], eax
xor dword [ebp + 0x14], ebx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
sub dword [ebp], ecx
sbb dword [ebp + 4], esi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 8]
adc esi, dword [ebp + 0xc]
push esi
push ecx
shld esi, ecx, 2
shl ecx, 2
add ecx, dword [esp]
adc esi, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], esi
mov eax, dword [edi + 0x20]
mov ebx, dword [edi + 0x24]
xor dword [ebp], eax
xor dword [ebp + 4], ebx
mov eax, dword [ebp]
mov edx, dword [ebp + 4]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
sub dword [ebp + 8], ecx
sbb dword [ebp + 0xc], esi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 0x10]
adc esi, dword [ebp + 0x14]
push esi
push ecx
shld esi, ecx, 2
shl ecx, 2
add ecx, dword [esp]
adc esi, dword [esp + 4]
add esp, 8
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x14], esi
mov eax, dword [edi + 0x28]
mov ebx, dword [edi + 0x2c]
xor dword [ebp + 8], eax
xor dword [ebp + 0xc], ebx
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
sub dword [ebp + 0x10], ecx
sbb dword [ebp + 0x14], esi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp]
adc esi, dword [ebp + 4]
push esi
push ecx
shld esi, ecx, 2
shl ecx, 2
add ecx, dword [esp]
adc esi, dword [esp + 4]
add esp, 8
mov dword [ebp], ecx
mov dword [ebp + 4], esi
mov eax, dword [edi + 0x30]
mov ebx, dword [edi + 0x34]
xor dword [ebp + 0x10], eax
xor dword [ebp + 0x14], ebx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
sub dword [ebp], ecx
sbb dword [ebp + 4], esi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 8]
adc esi, dword [ebp + 0xc]
push esi
push ecx
shld esi, ecx, 2
shl ecx, 2
add ecx, dword [esp]
adc esi, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], esi
mov eax, dword [edi + 0x38]
mov ebx, dword [edi + 0x3c]
xor dword [ebp], eax
xor dword [ebp + 4], ebx
mov eax, dword [ebp]
mov edx, dword [ebp + 4]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
sub dword [ebp + 8], ecx
sbb dword [ebp + 0xc], esi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov esi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor esi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor esi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor esi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 0x10]
adc esi, dword [ebp + 0x14]
push esi
push ecx
shld esi, ecx, 2
shl ecx, 2
add ecx, dword [esp]
adc esi, dword [esp + 4]
add esp, 8
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x14], esi
pop esi
mov eax, dword [edi + 0x38]
mov edx, dword [edi + 0x3c]
xor eax, 0xa5a5a5a5
xor edx, 0xa5a5a5a5
push edx
push eax
mov eax, dword [edi]
mov edx, dword [edi + 4]
sub eax, dword [esp]
sbb edx, dword [esp + 4]
mov dword [esi], eax
mov dword [esi + 4], edx
xor eax, dword [edi + 8]
xor edx, dword [edi + 0xc]
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
push edx
push eax
add eax, dword [edi + 0x10]
adc edx, dword [edi + 0x14]
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
pop eax
pop edx
not eax
not edx
shld edx, eax, 0x13
shl eax, 0x13
xor eax, dword [esi + 0x10]
xor edx, dword [esi + 0x14]
push edx
push eax
mov eax, dword [edi + 0x18]
mov edx, dword [edi + 0x1c]
sub eax, dword [esp]
sbb edx, dword [esp + 4]
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
xor eax, dword [edi + 0x20]
xor edx, dword [edi + 0x24]
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
push edx
push eax
add eax, dword [edi + 0x28]
adc edx, dword [edi + 0x2c]
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
pop eax
pop edx
not eax
not edx
shrd eax, edx, 0x17
shr edx, 0x17
xor eax, dword [esi + 0x28]
xor edx, dword [esi + 0x2c]
push edx
push eax
mov eax, dword [edi + 0x30]
mov edx, dword [edi + 0x34]
sub eax, dword [esp]
sbb edx, dword [esp + 4]
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
xor eax, dword [edi + 0x38]
xor edx, dword [edi + 0x3c]
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
add dword [esi], eax
adc dword [esi + 4], edx
not eax
not edx
shld edx, eax, 0x13
shl eax, 0x13
xor eax, dword [esi]
xor edx, dword [esi + 4]
sub dword [esi + 8], eax
sbb dword [esi + 0xc], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
xor dword [esi + 0x10], eax
xor dword [esi + 0x14], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
not eax
not edx
shrd eax, edx, 0x17
shr edx, 0x17
xor eax, dword [esi + 0x18]
xor edx, dword [esi + 0x1c]
sub dword [esi + 0x20], eax
sbb dword [esi + 0x24], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
xor dword [esi + 0x28], eax
xor dword [esi + 0x2c], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
xor eax, 0x89abcdef
xor edx, 0x1234567
sub dword [esi + 0x38], eax
sbb dword [esi + 0x3c], edx
add esp, 0x18
push edi
mov eax, dword [esi]
mov ebx, dword [esi + 4]
xor dword [ebp + 8], eax
xor dword [ebp + 0xc], ebx
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 0x10], ecx
sbb dword [ebp + 0x14], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp]
adc edi, dword [ebp + 4]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
sub ecx, dword [esp]
sbb edi, dword [esp + 4]
add esp, 8
mov dword [ebp], ecx
mov dword [ebp + 4], edi
mov eax, dword [esi + 8]
mov ebx, dword [esi + 0xc]
xor dword [ebp + 0x10], eax
xor dword [ebp + 0x14], ebx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp], ecx
sbb dword [ebp + 4], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 8]
adc edi, dword [ebp + 0xc]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
sub ecx, dword [esp]
sbb edi, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], edi
mov eax, dword [esi + 0x10]
mov ebx, dword [esi + 0x14]
xor dword [ebp], eax
xor dword [ebp + 4], ebx
mov eax, dword [ebp]
mov edx, dword [ebp + 4]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 8], ecx
sbb dword [ebp + 0xc], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 0x10]
adc edi, dword [ebp + 0x14]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
sub ecx, dword [esp]
sbb edi, dword [esp + 4]
add esp, 8
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x14], edi
mov eax, dword [esi + 0x18]
mov ebx, dword [esi + 0x1c]
xor dword [ebp + 8], eax
xor dword [ebp + 0xc], ebx
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 0x10], ecx
sbb dword [ebp + 0x14], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp]
adc edi, dword [ebp + 4]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
sub ecx, dword [esp]
sbb edi, dword [esp + 4]
add esp, 8
mov dword [ebp], ecx
mov dword [ebp + 4], edi
mov eax, dword [esi + 0x20]
mov ebx, dword [esi + 0x24]
xor dword [ebp + 0x10], eax
xor dword [ebp + 0x14], ebx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp], ecx
sbb dword [ebp + 4], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 8]
adc edi, dword [ebp + 0xc]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
sub ecx, dword [esp]
sbb edi, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], edi
mov eax, dword [esi + 0x28]
mov ebx, dword [esi + 0x2c]
xor dword [ebp], eax
xor dword [ebp + 4], ebx
mov eax, dword [ebp]
mov edx, dword [ebp + 4]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 8], ecx
sbb dword [ebp + 0xc], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 0x10]
adc edi, dword [ebp + 0x14]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
sub ecx, dword [esp]
sbb edi, dword [esp + 4]
add esp, 8
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x14], edi
mov eax, dword [esi + 0x30]
mov ebx, dword [esi + 0x34]
xor dword [ebp + 8], eax
xor dword [ebp + 0xc], ebx
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 0x10], ecx
sbb dword [ebp + 0x14], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp]
adc edi, dword [ebp + 4]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
sub ecx, dword [esp]
sbb edi, dword [esp + 4]
add esp, 8
mov dword [ebp], ecx
mov dword [ebp + 4], edi
mov eax, dword [esi + 0x38]
mov ebx, dword [esi + 0x3c]
xor dword [ebp + 0x10], eax
xor dword [ebp + 0x14], ebx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp], ecx
sbb dword [ebp + 4], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 8]
adc edi, dword [ebp + 0xc]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
sub ecx, dword [esp]
sbb edi, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], edi
pop edi
mov eax, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
xor eax, 0xa5a5a5a5
xor edx, 0xa5a5a5a5
push edx
push eax
mov eax, dword [esi]
mov edx, dword [esi + 4]
sub eax, dword [esp]
sbb edx, dword [esp + 4]
mov dword [esi], eax
mov dword [esi + 4], edx
xor eax, dword [esi + 8]
xor edx, dword [esi + 0xc]
mov dword [esi + 8], eax
mov dword [esi + 0xc], edx
push edx
push eax
add eax, dword [esi + 0x10]
adc edx, dword [esi + 0x14]
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
pop eax
pop edx
not eax
not edx
shld edx, eax, 0x13
shl eax, 0x13
xor eax, dword [esi + 0x10]
xor edx, dword [esi + 0x14]
push edx
push eax
mov eax, dword [esi + 0x18]
mov edx, dword [esi + 0x1c]
sub eax, dword [esp]
sbb edx, dword [esp + 4]
mov dword [esi + 0x18], eax
mov dword [esi + 0x1c], edx
xor eax, dword [esi + 0x20]
xor edx, dword [esi + 0x24]
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], edx
push edx
push eax
add eax, dword [esi + 0x28]
adc edx, dword [esi + 0x2c]
mov dword [esi + 0x28], eax
mov dword [esi + 0x2c], edx
pop eax
pop edx
not eax
not edx
shrd eax, edx, 0x17
shr edx, 0x17
xor eax, dword [esi + 0x28]
xor edx, dword [esi + 0x2c]
push edx
push eax
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
sub eax, dword [esp]
sbb edx, dword [esp + 4]
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
xor eax, dword [esi + 0x38]
xor edx, dword [esi + 0x3c]
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
add dword [esi], eax
adc dword [esi + 4], edx
not eax
not edx
shld edx, eax, 0x13
shl eax, 0x13
xor eax, dword [esi]
xor edx, dword [esi + 4]
sub dword [esi + 8], eax
sbb dword [esi + 0xc], edx
mov eax, dword [esi + 8]
mov edx, dword [esi + 0xc]
xor dword [esi + 0x10], eax
xor dword [esi + 0x14], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
add dword [esi + 0x18], eax
adc dword [esi + 0x1c], edx
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
not eax
not edx
shrd eax, edx, 0x17
shr edx, 0x17
xor eax, dword [esi + 0x18]
xor edx, dword [esi + 0x1c]
sub dword [esi + 0x20], eax
sbb dword [esi + 0x24], edx
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x24]
xor dword [esi + 0x28], eax
xor dword [esi + 0x2c], edx
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
add dword [esi + 0x30], eax
adc dword [esi + 0x34], edx
mov eax, dword [esi + 0x30]
mov edx, dword [esi + 0x34]
xor eax, 0x89abcdef
xor edx, 0x1234567
sub dword [esi + 0x38], eax
sbb dword [esi + 0x3c], edx
add esp, 0x18
push edi
mov eax, dword [esi]
mov ebx, dword [esi + 4]
xor dword [ebp], eax
xor dword [ebp + 4], ebx
mov eax, dword [ebp]
mov edx, dword [ebp + 4]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 8], ecx
sbb dword [ebp + 0xc], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 0x10]
adc edi, dword [ebp + 0x14]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x14], edi
mov eax, dword [esi + 8]
mov ebx, dword [esi + 0xc]
xor dword [ebp + 8], eax
xor dword [ebp + 0xc], ebx
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 0x10], ecx
sbb dword [ebp + 0x14], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp]
adc edi, dword [ebp + 4]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
mov dword [ebp], ecx
mov dword [ebp + 4], edi
mov eax, dword [esi + 0x10]
mov ebx, dword [esi + 0x14]
xor dword [ebp + 0x10], eax
xor dword [ebp + 0x14], ebx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp], ecx
sbb dword [ebp + 4], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 8]
adc edi, dword [ebp + 0xc]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], edi
mov eax, dword [esi + 0x18]
mov ebx, dword [esi + 0x1c]
xor dword [ebp], eax
xor dword [ebp + 4], ebx
mov eax, dword [ebp]
mov edx, dword [ebp + 4]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 8], ecx
sbb dword [ebp + 0xc], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 0x10]
adc edi, dword [ebp + 0x14]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x14], edi
mov eax, dword [esi + 0x20]
mov ebx, dword [esi + 0x24]
xor dword [ebp + 8], eax
xor dword [ebp + 0xc], ebx
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 0x10], ecx
sbb dword [ebp + 0x14], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp]
adc edi, dword [ebp + 4]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
mov dword [ebp], ecx
mov dword [ebp + 4], edi
mov eax, dword [esi + 0x28]
mov ebx, dword [esi + 0x2c]
xor dword [ebp + 0x10], eax
xor dword [ebp + 0x14], ebx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp], ecx
sbb dword [ebp + 4], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 8]
adc edi, dword [ebp + 0xc]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
mov dword [ebp + 8], ecx
mov dword [ebp + 0xc], edi
mov eax, dword [esi + 0x30]
mov ebx, dword [esi + 0x34]
xor dword [ebp], eax
xor dword [ebp + 4], ebx
mov eax, dword [ebp]
mov edx, dword [ebp + 4]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 8], ecx
sbb dword [ebp + 0xc], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp + 0x10]
adc edi, dword [ebp + 0x14]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
mov dword [ebp + 0x10], ecx
mov dword [ebp + 0x14], edi
mov eax, dword [esi + 0x38]
mov ebx, dword [esi + 0x3c]
xor dword [ebp + 8], eax
xor dword [ebp + 0xc], ebx
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
movzx ebx, al
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, dl
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
sub dword [ebp + 0x10], ecx
sbb dword [ebp + 0x14], edi
movzx ebx, dl
shl ebx, 3
mov ecx, dword [ebx + 0x41bfeb]
mov edi, dword [ebx + 0x41bfef]
bswap edx
movzx ebx, dh
shl ebx, 3
xor ecx, dword [ebx + 0x41c7eb]
xor edi, dword [ebx + 0x41c7ef]
movzx ebx, al
shl ebx, 3
xor ecx, dword [ebx + 0x41cfeb]
xor edi, dword [ebx + 0x41cfef]
bswap eax
movzx ebx, ah
shl ebx, 3
xor ecx, dword [ebx + 0x41d7eb]
xor edi, dword [ebx + 0x41d7ef]
add ecx, dword [ebp]
adc edi, dword [ebp + 4]
push edi
push ecx
shld edi, ecx, 3
shl ecx, 3
add ecx, dword [esp]
adc edi, dword [esp + 4]
add esp, 8
mov dword [ebp], ecx
mov dword [ebp + 4], edi
pop edi
pop ebx
mov eax, dword [ebp]
mov edx, dword [ebp + 4]
xor dword [ebx], eax
xor dword [ebx + 4], edx
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
sub eax, dword [ebx + 8]
sbb edx, dword [ebx + 0xc]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], edx
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
add dword [ebx + 0x10], eax
adc dword [ebx + 0x14], edx
add esp, 0x58
popal
ret