Function at 0x46f840
Capabilities:
Encrypt data using chaskey
Hash data using murmur3

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x6c
push ebx
mov eax, ecx
push esi
mov dword [ebp - 4], eax
xor esi, esi
push edi
add eax, 0x12
movzx edx, byte [eax + 1]
lea eax, [eax + 4]
movzx ecx, byte [eax - 4]
shl edx, 8
or edx, ecx
movzx ecx, byte [eax - 5]
shl edx, 8
or edx, ecx
movzx ecx, byte [eax - 6]
shl edx, 8
or edx, ecx
mov dword [ebp + esi*4 - 0x6c], edx
inc esi
cmp esi, 0x10
jl 0x46f853
mov esi, dword [ebp - 4]
mov ebx, dword [esi + 0x5c]
mov ecx, ebx
mov edi, dword [esi + 0x58]
xor ecx, edi
mov eax, dword [esi + 0x60]
xor eax, ebx
xor eax, edi
add eax, dword [esi + 0x54]
add eax, dword [ebp - 0x6c]
rol eax, 0xb
xor ecx, eax
add ecx, dword [ebp - 0x68]
add ecx, dword [esi + 0x60]
rol ecx, 0xe
mov esi, ecx
xor esi, edi
xor esi, eax
add esi, dword [ebp - 0x64]
add esi, ebx
mov ebx, ecx
rol esi, 0xf
xor ebx, esi
mov edx, ebx
xor edx, eax
add edx, dword [ebp - 0x60]
add edx, edi
mov edi, esi
rol edx, 0xc
xor ebx, edx
xor edi, edx
add ebx, dword [ebp - 0x5c]
add ebx, eax
rol ebx, 5
xor edi, ebx
add edi, dword [ebp - 0x58]
add edi, ecx
rol edi, 8
mov ecx, edi
xor ecx, edx
xor ecx, ebx
add ecx, dword [ebp - 0x54]
add ecx, esi
mov esi, edi
rol ecx, 7
xor esi, ecx
mov eax, esi
xor eax, ebx
add eax, dword [ebp - 0x50]
add eax, edx
mov edx, ecx
rol eax, 9
xor esi, eax
xor edx, eax
add esi, dword [ebp - 0x4c]
add esi, ebx
rol esi, 0xb
xor edx, esi
mov dword [ebp - 0x14], esi
add edx, dword [ebp - 0x48]
add edx, edi
mov edi, dword [ebp - 0x14]
rol edx, 0xd
mov esi, edx
mov ebx, edx
xor esi, eax
xor esi, edi
add esi, ecx
add esi, dword [ebp - 0x44]
rol esi, 0xe
xor ebx, esi
mov ecx, ebx
xor ecx, edi
add ecx, eax
add ecx, dword [ebp - 0x40]
rol ecx, 0xf
xor ebx, ecx
add ebx, dword [ebp - 0x3c]
add ebx, edi
rol ebx, 6
mov dword [ebp - 0x24], ebx
mov edi, dword [ebp - 0x34]
mov eax, esi
xor eax, ecx
xor eax, ebx
add eax, dword [ebp - 0x38]
add eax, edx
rol eax, 7
mov edx, eax
mov dword [ebp - 0xc], eax
xor edx, ecx
xor edx, ebx
add edx, edi
add edi, 0x50a28be6
add edx, esi
mov esi, dword [ebp - 4]
rol edx, 9
xor eax, edx
mov dword [ebp - 0x18], edx
xor eax, ebx
add eax, dword [ebp - 0x30]
add eax, ecx
mov ebx, dword [esi + 0x70]
rol eax, 8
mov ecx, ebx
not ecx
mov dword [ebp - 8], eax
and ecx, dword [esi + 0x6c]
mov eax, ebx
and eax, dword [esi + 0x68]
or ecx, eax
mov eax, dword [ebp - 4]
add ecx, dword [esi + 0x64]
mov esi, dword [ebp - 0x58]
add esi, 0x50a28be6
mov edx, dword [eax + 0x6c]
add esi, ecx
mov ecx, edx
rol esi, 8
not ecx
and ecx, dword [eax + 0x68]
mov eax, edx
and eax, esi
add edx, 0x50a28be6
or ecx, eax
mov eax, dword [ebp - 4]
add ecx, ebx
add edi, ecx
rol edi, 9
mov ebx, dword [eax + 0x68]
mov ecx, ebx
not ecx
mov eax, edi
and ecx, esi
and eax, ebx
or ecx, eax
add ebx, 0x50a28be6
add ecx, dword [ebp - 0x50]
add edx, ecx
mov ecx, esi
not ecx
rol edx, 9
and ecx, edi
mov eax, edx
and eax, esi
or ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x6c]
add ebx, ecx
mov ecx, edi
not ecx
rol ebx, 0xb
and ecx, edx
and eax, ebx
or ecx, eax
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x48]
add esi, ecx
mov ecx, edx
not ecx
rol esi, 0xd
and ecx, ebx
mov eax, edx
and eax, esi
or ecx, eax
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x64]
add edi, ecx
mov ecx, ebx
not ecx
rol edi, 0xf
and ecx, esi
mov eax, edi
and eax, ebx
or ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x40]
add edx, 0x50a28be6
add edx, ecx
mov ecx, esi
not ecx
rol edx, 0xf
and ecx, edi
mov dword [ebp - 0x14], edx
mov eax, edx
and eax, esi
or ecx, eax
mov eax, edi
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x5c]
add ebx, ecx
mov ecx, edi
not ecx
rol ebx, 5
and ecx, edx
and eax, ebx
or ecx, eax
mov eax, edx
add ecx, esi
mov esi, dword [ebp - 0x38]
add esi, 0x50a28be6
add esi, ecx
mov ecx, edx
not ecx
rol esi, 7
and ecx, ebx
mov dword [ebp - 0x10], esi
and eax, esi
lea edx, [edi + 0x50a28be6]
or ecx, eax
mov edi, dword [ebp - 0x14]
add ecx, dword [ebp - 0x54]
add edi, 0x50a28be6
add edx, ecx
mov ecx, ebx
not ecx
rol edx, 7
and ecx, esi
mov eax, edx
and eax, ebx
or ecx, eax
add ecx, dword [ebp - 0x30]
add edi, ecx
mov ecx, esi
not ecx
rol edi, 8
and ecx, edx
mov eax, edi
and eax, esi
lea esi, [ebx + 0x50a28be6]
mov ebx, dword [ebp - 0x10]
or ecx, eax
add ecx, dword [ebp - 0x4c]
mov eax, edx
add esi, ecx
mov ecx, edx
not ecx
rol esi, 0xb
and ecx, edi
and eax, esi
or ecx, eax
add ecx, dword [ebp - 0x68]
add ebx, 0x50a28be6
add ebx, ecx
mov eax, edi
rol ebx, 0xe
mov ecx, edi
not ecx
and eax, ebx
and ecx, esi
or ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x44]
add edx, 0x50a28be6
add edx, ecx
mov ecx, esi
not ecx
rol edx, 0xe
and ecx, ebx
mov dword [ebp - 0x20], edx
mov eax, edx
and eax, esi
or ecx, eax
lea eax, [edi + 0x50a28be6]
add ecx, dword [ebp - 0x60]
add eax, ecx
mov edi, dword [ebp - 0x18]
rol eax, 0xc
mov ecx, ebx
not ecx
mov dword [ebp - 0x10], eax
and ecx, edx
and eax, ebx
or ecx, eax
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0x3c]
add ecx, esi
mov esi, dword [ebp - 0xc]
add eax, 0x50a28be6
add eax, ecx
mov ecx, edx
not ecx
rol eax, 6
and ecx, esi
mov dword [ebp - 0x1c], eax
and edx, edi
add esi, 0x5a827999
or edx, ecx
add edx, 0x5a827999
add edx, dword [ebp - 0x50]
add edx, ebx
mov ebx, dword [ebp - 8]
rol edx, 7
mov eax, ebx
and eax, edx
mov ecx, edx
not ecx
and ecx, edi
add edi, 0x5a827999
or ecx, eax
add ecx, dword [ebp - 0x5c]
add esi, ecx
rol esi, 6
mov ecx, esi
mov eax, esi
not ecx
and eax, edx
and ecx, ebx
add ebx, 0x5a827999
or ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x38]
add edi, ecx
rol edi, 8
mov ecx, edi
and eax, edi
not ecx
and ecx, edx
or ecx, eax
add ecx, dword [ebp - 0x68]
add ebx, ecx
rol ebx, 0xd
mov ecx, ebx
not ecx
and ecx, esi
mov eax, edi
and eax, ebx
or ecx, eax
mov eax, ebx
add ecx, edx
mov edx, dword [ebp - 0x44]
add edx, 0x5a827999
add edx, ecx
rol edx, 0xb
and eax, edx
mov ecx, edx
not ecx
and ecx, edi
or ecx, eax
add ecx, 0x5a827999
add ecx, dword [ebp - 0x54]
add esi, ecx
rol esi, 9
mov ecx, esi
mov eax, esi
not ecx
and eax, edx
and ecx, ebx
or ecx, eax
mov eax, esi
add ecx, 0x5a827999
add ecx, dword [ebp - 0x30]
add edi, ecx
rol edi, 7
and eax, edi
mov ecx, edi
not ecx
and ecx, edx
or ecx, eax
mov eax, edi
add ecx, 0x5a827999
add ecx, dword [ebp - 0x60]
add ebx, ecx
rol ebx, 0xf
and eax, ebx
mov ecx, ebx
not ecx
and ecx, esi
or ecx, eax
mov eax, ebx
add ecx, 0x5a827999
add ecx, dword [ebp - 0x3c]
add edx, ecx
rol edx, 7
and eax, edx
mov dword [ebp - 0x18], edx
mov ecx, edx
not ecx
and ecx, edi
or ecx, eax
lea eax, [esi + 0x5a827999]
add ecx, dword [ebp - 0x6c]
add eax, ecx
mov esi, dword [ebp - 0x18]
rol eax, 0xc
mov ecx, eax
mov dword [ebp - 0x14], eax
not ecx
and eax, edx
and ecx, ebx
lea edx, [edi + 0x5a827999]
mov edi, dword [ebp - 0x14]
or ecx, eax
add ecx, dword [ebp - 0x48]
mov eax, edi
add edx, ecx
rol edx, 0xf
mov ecx, edx
and eax, edx
not ecx
and ecx, esi
or ecx, eax
add ecx, 0x5a827999
add ecx, dword [ebp - 0x58]
add ebx, ecx
rol ebx, 9
mov eax, edx
and eax, ebx
mov dword [ebp - 0x2c], ebx
mov ecx, ebx
add esi, 0x5a827999
not ecx
and ecx, edi
or ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x64]
add esi, ecx
rol esi, 0xb
and eax, esi
mov dword [ebp - 8], esi
mov ecx, esi
not ecx
and ecx, edx
or ecx, eax
lea eax, [edi + 0x5a827999]
add ecx, dword [ebp - 0x34]
add eax, ecx
mov edi, dword [ebp - 0x10]
rol eax, 7
mov ecx, eax
mov dword [ebp - 0x28], eax
and eax, esi
not ecx
mov esi, dword [ebp - 0x24]
and ecx, ebx
mov ebx, dword [ebp - 0x40]
or ecx, eax
add ecx, edx
add esi, 0x5c4dd124
mov edx, dword [ebp - 0x1c]
lea eax, [ebx + 0x5a827999]
add eax, ecx
lea ecx, [ebx + 0x5c4dd124]
rol eax, 0xd
mov dword [ebp - 0x18], eax
mov eax, edi
not eax
or eax, edx
xor eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x54]
add esi, eax
mov eax, edx
not eax
rol esi, 9
or eax, esi
xor eax, edi
add edi, 0x5c4dd124
add eax, dword [ebp - 0x20]
add ecx, eax
mov eax, esi
not eax
rol ecx, 0xd
or eax, ecx
xor eax, edx
add edx, 0x5c4dd124
add eax, dword [ebp - 0x60]
add edi, eax
mov eax, ecx
not eax
rol edi, 0xf
or eax, edi
xor eax, esi
add eax, dword [ebp - 0x50]
add edx, eax
mov eax, edi
not eax
rol edx, 7
or eax, edx
xor eax, ecx
add eax, 0x5c4dd124
add eax, dword [ebp - 0x6c]
add esi, eax
mov eax, edx
rol esi, 0xc
not eax
or eax, esi
xor eax, edi
mov ebx, dword [ebp - 0x38]
add eax, ecx
add ebx, 0x5c4dd124
add ebx, eax
mov ecx, dword [ebp - 0x44]
rol ebx, 8
mov eax, esi
not eax
add ecx, 0x5c4dd124
or eax, ebx
xor eax, edx
add eax, 0x5c4dd124
add eax, dword [ebp - 0x58]
add edi, eax
mov eax, ebx
not eax
rol edi, 9
or eax, edi
xor eax, esi
add eax, edx
lea edx, [esi + 0x5c4dd124]
add ecx, eax
lea esi, [ebx + 0x5c4dd124]
rol ecx, 0xb
mov eax, edi
not eax
or eax, ecx
xor eax, ebx
mov ebx, dword [ebp - 0x4c]
add eax, dword [ebp - 0x34]
add ebx, 0x5c4dd124
add edx, eax
mov eax, ecx
not eax
rol edx, 7
or eax, edx
xor eax, edi
add eax, dword [ebp - 0x30]
add esi, eax
mov eax, edx
not eax
rol esi, 7
or eax, esi
xor eax, ecx
add eax, ebx
mov ebx, dword [ebp - 0x3c]
add edi, eax
add ebx, 0x5c4dd124
rol edi, 0xc
mov eax, esi
not eax
or eax, edi
xor eax, edx
add eax, ecx
lea ecx, [edx + 0x5c4dd124]
add ebx, eax
lea edx, [esi + 0x5c4dd124]
rol ebx, 7
mov eax, edi
not eax
or eax, ebx
xor eax, esi
add eax, dword [ebp - 0x5c]
add ecx, eax
mov eax, ebx
not eax
rol ecx, 6
or eax, ecx
mov dword [ebp - 0x14], ecx
xor eax, edi
add eax, dword [ebp - 0x48]
add edx, eax
mov eax, ecx
rol edx, 0xf
not eax
or eax, edx
mov dword [ebp - 0xc], edx
xor eax, ebx
add eax, dword [ebp - 0x68]
add edi, 0x5c4dd124
add eax, edi
mov esi, dword [ebp - 0x28]
rol eax, 0xd
mov dword [ebp - 0x10], eax
mov eax, esi
mov edi, dword [ebp - 0x18]
and eax, edi
mov edx, edi
not edx
mov ecx, edx
and ecx, dword [ebp - 8]
or ecx, eax
mov eax, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x4c]
add eax, 0x5a827999
add eax, ecx
mov ecx, dword [ebp - 0xc]
rol eax, 0xc
not ecx
or ecx, dword [ebp - 0x10]
xor ecx, dword [ebp - 0x14]
mov dword [ebp - 0x2c], eax
add ecx, 0x5c4dd124
add ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 8]
add ecx, ebx
add eax, 0x6ed9eba1
rol ecx, 0xb
or edx, ecx
mov ebx, dword [ebp - 0x4c]
xor edx, esi
add ebx, 0x6ed9eba1
add edx, dword [ebp - 0x60]
add edx, eax
mov eax, ecx
not eax
rol edx, 0xb
or eax, edx
xor eax, edi
add edi, 0x6ed9eba1
add eax, esi
mov esi, dword [ebp - 0x44]
add esi, 0x6ed9eba1
add esi, eax
mov eax, edx
not eax
rol esi, 0xd
or eax, esi
xor eax, ecx
add eax, dword [ebp - 0x34]
add edi, eax
mov eax, esi
not eax
rol edi, 6
or eax, edi
xor eax, edx
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x5c]
add ecx, eax
mov eax, edi
not eax
rol ecx, 7
or eax, ecx
xor eax, esi
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x48]
add edx, eax
mov eax, ecx
not eax
rol edx, 0xe
or eax, edx
xor eax, edi
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x30]
add esi, eax
mov eax, edx
not eax
rol esi, 9
or eax, esi
xor eax, ecx
add eax, ebx
add edi, eax
lea ebx, [ecx + 0x6ed9eba1]
rol edi, 0xd
lea ecx, [esi + 0x6ed9eba1]
mov eax, esi
not eax
or eax, edi
xor eax, edx
add eax, dword [ebp - 0x68]
add ebx, eax
mov eax, edi
not eax
rol ebx, 0xf
or eax, ebx
xor eax, esi
lea esi, [edi + 0x6ed9eba1]
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x64]
add edx, eax
mov eax, ebx
not eax
rol edx, 0xe
or eax, edx
xor eax, edi
lea edi, [ebx + 0x6ed9eba1]
add eax, dword [ebp - 0x50]
add ecx, eax
mov eax, edx
not eax
rol ecx, 8
or eax, ecx
xor eax, ebx
add eax, dword [ebp - 0x6c]
add esi, eax
mov eax, ecx
not eax
rol esi, 0xd
or eax, esi
xor eax, edx
add eax, dword [ebp - 0x54]
add edi, eax
lea ebx, [esi + 0x6ed9eba1]
rol edi, 6
mov eax, esi
not eax
or eax, edi
xor eax, ecx
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x38]
add edx, eax
mov eax, edi
not eax
rol edx, 5
or eax, edx
mov dword [ebp - 0x20], edx
xor eax, esi
add eax, ecx
mov ecx, dword [ebp - 0x40]
add ecx, 0x6ed9eba1
add ecx, eax
mov eax, edx
not eax
rol ecx, 0xc
or eax, ecx
mov dword [ebp - 0x24], ecx
xor eax, edi
add edi, 0x6ed9eba1
add eax, dword [ebp - 0x58]
add ebx, eax
mov eax, ecx
not eax
rol ebx, 7
mov dword [ebp - 0x28], eax
or eax, ebx
xor eax, edx
mov dword [ebp - 0x1c], ebx
add eax, dword [ebp - 0x3c]
mov ebx, dword [ebp - 0x2c]
add eax, edi
rol eax, 5
mov dword [ebp - 8], eax
mov edi, dword [ebp - 0x10]
mov ecx, ebx
not ecx
mov edx, dword [ebp - 0xc]
and ecx, edx
mov esi, dword [ebp - 0x14]
mov eax, ebx
add esi, 0x6d703ef3
and eax, edi
add edx, 0x6d703ef3
or ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x30]
add esi, ecx
rol esi, 9
and eax, esi
mov ecx, esi
not ecx
and ecx, edi
add edi, 0x6d703ef3
or ecx, eax
add ecx, dword [ebp - 0x58]
add edx, ecx
rol edx, 7
mov ecx, edx
mov eax, edx
not ecx
and eax, esi
and ecx, ebx
add ebx, 0x6d703ef3
or ecx, eax
mov eax, edx
add ecx, dword [ebp - 0x68]
add edi, ecx
rol edi, 0xf
and eax, edi
mov ecx, edi
not ecx
and ecx, esi
or ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x60]
add ebx, ecx
rol ebx, 0xb
and eax, ebx
mov ecx, ebx
not ecx
and ecx, edx
or ecx, eax
mov eax, ebx
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x50]
add esi, ecx
rol esi, 8
and eax, esi
mov ecx, esi
not ecx
and ecx, edi
or ecx, eax
mov eax, dword [ebp - 0x34]
add ecx, edx
add eax, 0x6d703ef3
add eax, ecx
lea edx, [edi + 0x6d703ef3]
rol eax, 6
mov ecx, eax
mov dword [ebp - 0x2c], eax
mov edi, dword [ebp - 0x2c]
not ecx
and ecx, ebx
and eax, esi
or ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x54]
add edx, ecx
rol edx, 6
mov ecx, edx
and eax, edx
not ecx
and ecx, esi
or ecx, eax
add ecx, 0x6d703ef3
mov eax, edx
add ecx, dword [ebp - 0x48]
add ebx, ecx
rol ebx, 0xe
and eax, ebx
mov ecx, ebx
not ecx
and ecx, edi
add edi, 0x6d703ef3
or ecx, eax
mov eax, ebx
add ecx, esi
mov esi, dword [ebp - 0x40]
add esi, 0x6d703ef3
add esi, ecx
rol esi, 0xc
and eax, esi
mov ecx, esi
not ecx
and ecx, edx
or ecx, eax
add ecx, dword [ebp - 0x4c]
add edi, ecx
rol edi, 0xd
mov ecx, edi
mov eax, edi
not ecx
and eax, esi
and ecx, ebx
or ecx, eax
mov eax, edi
add ecx, edx
mov edx, dword [ebp - 0x3c]
add edx, 0x6d703ef3
add edx, ecx
rol edx, 5
and eax, edx
mov ecx, edx
not ecx
and ecx, esi
or ecx, eax
mov eax, edx
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x64]
add ebx, ecx
rol ebx, 0xe
and eax, ebx
mov ecx, ebx
not ecx
and ecx, edi
or ecx, eax
mov eax, ebx
add ecx, esi
mov esi, dword [ebp - 0x44]
add esi, 0x6d703ef3
add esi, ecx
rol esi, 0xd
mov ecx, esi
mov dword [ebp - 0x14], esi
not ecx
and eax, esi
and ecx, edx
or ecx, eax
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x6c]
add edi, ecx
rol edi, 0xd
mov ecx, edi
mov dword [ebp - 0x2c], edi
not ecx
mov eax, edi
and eax, esi
and ecx, ebx
or ecx, eax
lea esi, [edx + 0x6d703ef3]
add ecx, dword [ebp - 0x5c]
add esi, ecx
rol esi, 7
mov edx, esi
not edx
mov ecx, edx
mov eax, edi
and ecx, dword [ebp - 0x14]
and eax, esi
or ecx, eax
mov edi, dword [ebp - 0x20]
add ecx, ebx
mov eax, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x24]
add eax, 0x6d703ef3
add eax, ecx
add edi, 0x8f1bbcdc
mov ecx, dword [ebp - 0x28]
and ecx, esi
rol eax, 5
mov dword [ebp - 0x18], eax
mov eax, ebx
and eax, dword [ebp - 8]
add ebx, 0x8f1bbcdc
or ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x68]
add edi, ecx
mov ecx, dword [ebp - 8]
and edx, ecx
rol edi, 0xb
not ecx
and eax, edi
or edx, eax
and ecx, edi
add edx, dword [ebp - 0x48]
add ebx, edx
mov edx, dword [ebp - 0x40]
rol ebx, 0xc
add edx, 0x8f1bbcdc
mov eax, ebx
and eax, dword [ebp - 8]
or ecx, eax
add ecx, esi
mov esi, dword [ebp - 0x44]
add edx, ecx
add esi, 0x8f1bbcdc
rol edx, 0xe
mov ecx, edi
not ecx
mov eax, edx
and ecx, ebx
and eax, edi
or ecx, eax
mov eax, ebx
add ecx, dword [ebp - 8]
add esi, ecx
mov ecx, ebx
not ecx
rol esi, 0xf
and ecx, edx
and eax, esi
or ecx, eax
mov eax, edx
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x6c]
add edi, ecx
mov ecx, edx
not ecx
rol edi, 0xe
and ecx, esi
and eax, edi
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x4c]
add ebx, ecx
mov ecx, esi
rol ebx, 0xf
not ecx
and ecx, edi
mov eax, ebx
and eax, esi
or ecx, eax
add ecx, edx
mov edx, dword [ebp - 0x3c]
add edx, 0x8f1bbcdc
add edx, ecx
mov ecx, edi
not ecx
rol edx, 9
and ecx, ebx
mov eax, edx
and eax, edi
or ecx, eax
mov eax, ebx
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x5c]
add esi, ecx
mov ecx, ebx
not ecx
rol esi, 8
and ecx, edx
and eax, esi
or ecx, eax
mov eax, edx
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x38]
add edi, ecx
mov ecx, edx
not ecx
rol edi, 9
and ecx, esi
and eax, edi
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x60]
add ebx, ecx
mov ecx, esi
not ecx
rol ebx, 0xe
and ecx, edi
mov eax, ebx
and eax, esi
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x50]
add edx, ecx
mov ecx, edi
not ecx
rol edx, 5
and ecx, ebx
mov eax, edx
and eax, edi
or ecx, eax
mov eax, ebx
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x30]
add esi, ecx
mov ecx, ebx
not ecx
rol esi, 6
and ecx, edx
and eax, esi
or ecx, eax
mov eax, edx
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x34]
add edi, ecx
mov ecx, edx
not ecx
rol edi, 8
and ecx, esi
mov dword [ebp - 0x28], edi
and eax, edi
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x58]
add ebx, ecx
mov ecx, esi
rol ebx, 6
not ecx
mov eax, ebx
mov dword [ebp - 0x10], ebx
and ecx, edi
and eax, esi
or ecx, eax
add ecx, dword [ebp - 0x54]
lea eax, [edx - 0x70e44324]
add eax, ecx
mov ecx, edi
rol eax, 5
not ecx
and ecx, ebx
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x1c]
and eax, edi
mov edi, dword [ebp - 0x18]
or ecx, eax
add ecx, dword [ebp - 0x64]
lea eax, [esi - 0x70e44324]
add eax, ecx
mov edx, ebx
xor edx, dword [ebp - 0x2c]
xor edx, edi
rol eax, 0xc
add edx, dword [ebp - 0x4c]
add edx, dword [ebp - 0x14]
rol edx, 0xf
mov dword [ebp - 0x24], eax
mov eax, ebx
xor eax, edi
xor eax, edx
add eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x2c]
rol eax, 5
mov esi, eax
xor esi, edi
xor esi, edx
add esi, dword [ebp - 0x5c]
add esi, ebx
mov ebx, eax
rol esi, 8
xor ebx, esi
mov ecx, ebx
xor ecx, edx
add ecx, dword [ebp - 0x68]
add ecx, edi
rol ecx, 0xb
xor ebx, ecx
add ebx, dword [ebp - 0x60]
add ebx, edx
mov edx, esi
xor edx, ecx
rol ebx, 0xe
xor edx, ebx
add edx, eax
add edx, dword [ebp - 0x40]
rol edx, 0xe
mov edi, edx
xor edi, ecx
xor edi, ebx
add edi, dword [ebp - 0x30]
add edi, esi
mov esi, edx
rol edi, 6
xor esi, edi
mov eax, esi
xor eax, ebx
add eax, dword [ebp - 0x6c]
add eax, ecx
mov ecx, edi
rol eax, 0xe
xor esi, eax
xor ecx, eax
add esi, dword [ebp - 0x58]
add esi, ebx
rol esi, 6
xor ecx, esi
add ecx, edx
add ecx, dword [ebp - 0x3c]
rol ecx, 9
mov edx, ecx
mov ebx, ecx
xor edx, eax
xor edx, esi
add edx, dword [ebp - 0x64]
add edx, edi
rol edx, 0xc
xor ebx, edx
mov edi, ebx
xor edi, esi
add edi, eax
mov eax, dword [ebp - 0x28]
add edi, dword [ebp - 0x38]
rol edi, 9
xor ebx, edi
mov dword [ebp - 0x2c], edi
add ebx, dword [ebp - 0x48]
add ebx, esi
mov esi, edx
xor esi, edi
rol ebx, 0xc
xor esi, ebx
add esi, dword [ebp - 0x50]
add esi, ecx
rol esi, 5
mov ecx, esi
xor ecx, edi
mov edi, dword [ebp - 4]
xor ecx, ebx
add ecx, edx
mov edx, edi
add ecx, dword [ebp - 0x44]
add eax, dword [edi + 0x54]
rol ecx, 0xf
add dword [edx + 0x60], esi
xor esi, ecx
add dword [edx + 0x64], ebx
xor esi, ebx
add esi, dword [ebp - 0x34]
add esi, dword [ebp - 0x2c]
add dword [edx + 0x6c], ecx
mov dword [edx + 0x54], eax
mov eax, dword [ebp - 0x24]
add eax, dword [edi + 0x58]
mov dword [edx + 0x58], eax
mov eax, dword [ebp - 0x20]
add eax, dword [edi + 0x5c]
rol esi, 8
add dword [edx + 0x68], esi
pop edi
mov dword [edx + 0x5c], eax
mov eax, dword [ebp - 0x10]
add dword [edx + 0x70], eax
pop esi
pop ebx
mov esp, ebp
pop ebp
ret