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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
push ebx
mov ebx, ecx
push esi
push edi
mov dword [ebp - 4], ebx
xor esi, esi
lea eax, [ebx + 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 - 0x60], edx
inc esi
cmp esi, 0x10
jl 0x4e3e73
mov edi, dword [ebx + 0x58]
mov eax, dword [ebx + 0x5c]
mov edx, eax
mov ecx, dword [ebx + 0x60]
xor edx, edi
xor ecx, eax
mov dword [ebp - 8], edi
xor ecx, edi
add ecx, dword [ebp - 0x60]
add ecx, dword [ebx + 0x54]
rol ecx, 0xb
xor edx, ecx
add edx, dword [ebp - 0x5c]
add edx, dword [ebx + 0x60]
rol edx, 0xe
mov esi, edx
mov ebx, edx
xor esi, edi
xor esi, ecx
add esi, dword [ebp - 0x58]
add esi, eax
rol esi, 0xf
xor ebx, esi
mov eax, ebx
xor eax, ecx
add eax, dword [ebp - 0x54]
add eax, edi
mov edi, esi
rol eax, 0xc
xor ebx, eax
xor edi, eax
add ebx, dword [ebp - 0x50]
add ebx, ecx
rol ebx, 5
xor edi, ebx
add edi, dword [ebp - 0x4c]
add edi, edx
rol edi, 8
mov edx, edi
xor edx, eax
xor edx, ebx
add edx, dword [ebp - 0x48]
add edx, esi
mov esi, edi
rol edx, 7
xor esi, edx
mov ecx, esi
xor ecx, ebx
add ecx, dword [ebp - 0x44]
add ecx, eax
rol ecx, 9
xor esi, ecx
add esi, dword [ebp - 0x40]
add esi, ebx
rol esi, 0xb
mov dword [ebp - 0xc], esi
mov esi, edx
mov ebx, dword [ebp - 0xc]
xor esi, ecx
xor esi, ebx
add esi, dword [ebp - 0x3c]
add esi, edi
rol esi, 0xd
mov edi, esi
xor edi, ecx
xor edi, ebx
add edi, dword [ebp - 0x38]
add edi, edx
mov edx, esi
rol edi, 0xe
xor edx, edi
mov eax, edx
xor eax, ebx
add eax, dword [ebp - 0x34]
add eax, ecx
rol eax, 0xf
xor edx, eax
add edx, dword [ebp - 0x30]
add edx, ebx
mov ebx, edi
rol edx, 6
xor ebx, eax
xor ebx, edx
add ebx, dword [ebp - 0x2c]
add ebx, esi
rol ebx, 7
mov esi, ebx
xor esi, eax
xor esi, edx
add esi, dword [ebp - 0x28]
add esi, edi
mov edi, ebx
rol esi, 9
xor edi, esi
mov dword [ebp - 0xc], esi
xor edi, edx
add edi, dword [ebp - 0x24]
add edi, eax
mov eax, esi
rol edi, 8
and eax, edi
mov dword [ebp - 0x10], edi
mov ecx, edi
not ecx
and ecx, ebx
or ecx, eax
mov eax, edi
add ecx, 0x5a827999
add ecx, dword [ebp - 0x44]
add edx, ecx
rol edx, 7
and eax, edx
mov ecx, edx
not ecx
and ecx, esi
lea esi, [ebx + 0x5a827999]
or ecx, eax
mov ebx, dword [ebp - 0x10]
add ecx, dword [ebp - 0x50]
add ebx, 0x5a827999
add esi, ecx
rol esi, 6
mov ecx, esi
mov eax, esi
not ecx
and eax, edx
and ecx, edi
mov edi, dword [ebp - 0xc]
or ecx, eax
add edi, 0x5a827999
add ecx, dword [ebp - 0x2c]
mov eax, esi
add edi, ecx
rol edi, 8
and eax, edi
mov ecx, edi
not ecx
and ecx, edx
or ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x5c]
add ebx, ecx
rol ebx, 0xd
mov ecx, ebx
and eax, ebx
not ecx
and ecx, esi
or ecx, eax
mov eax, ebx
add ecx, 0x5a827999
add ecx, dword [ebp - 0x38]
add edx, ecx
rol edx, 0xb
mov ecx, edx
and eax, edx
not ecx
and ecx, edi
or ecx, eax
add ecx, 0x5a827999
add ecx, dword [ebp - 0x48]
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 - 0x24]
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 - 0x54]
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 - 0x30]
add edx, ecx
rol edx, 7
and eax, edx
mov ecx, edx
not ecx
and ecx, edi
or ecx, eax
add ecx, 0x5a827999
add ecx, dword [ebp - 0x60]
add esi, ecx
rol esi, 0xc
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 - 0x3c]
add edi, ecx
rol edi, 0xf
and eax, edi
mov ecx, edi
not ecx
and ecx, edx
or ecx, eax
mov eax, edi
add ecx, 0x5a827999
add ecx, dword [ebp - 0x4c]
add ebx, ecx
rol ebx, 9
mov ecx, ebx
mov dword [ebp - 0xc], ebx
not ecx
and eax, ebx
and ecx, esi
lea ebx, [edx + 0x5a827999]
or ecx, eax
mov eax, dword [ebp - 0xc]
add ecx, dword [ebp - 0x58]
add ebx, ecx
rol ebx, 0xb
mov ecx, ebx
and eax, ebx
not ecx
and ecx, edi
or ecx, eax
add ecx, 0x5a827999
add ecx, dword [ebp - 0x28]
add esi, ecx
rol esi, 7
mov ecx, esi
mov eax, esi
and eax, ebx
not ecx
and ecx, dword [ebp - 0xc]
or ecx, eax
mov eax, esi
add ecx, 0x5a827999
add ecx, dword [ebp - 0x34]
add edi, ecx
rol edi, 0xd
and eax, edi
mov edx, edi
not edx
mov ecx, edx
and ecx, ebx
add ebx, 0x6ed9eba1
or ecx, eax
mov eax, dword [ebp - 0xc]
add ecx, dword [ebp - 0x40]
add eax, 0x5a827999
add ecx, eax
rol ecx, 0xc
or edx, ecx
mov eax, ecx
not eax
xor edx, esi
add edx, dword [ebp - 0x54]
add edx, ebx
mov ebx, dword [ebp - 0x38]
rol edx, 0xb
add ebx, 0x6ed9eba1
or eax, edx
xor eax, edi
add eax, ebx
mov ebx, dword [ebp - 0x50]
add esi, eax
add ebx, 0x6ed9eba1
rol esi, 0xd
mov eax, edx
not eax
or eax, esi
xor eax, ecx
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x28]
add edi, eax
mov eax, esi
not eax
rol edi, 6
or eax, edi
xor eax, edx
add eax, ebx
mov ebx, dword [ebp - 0x3c]
add ecx, eax
add ebx, 0x6ed9eba1
mov eax, edi
rol ecx, 7
not eax
or eax, ecx
xor eax, esi
add eax, ebx
mov ebx, dword [ebp - 0x24]
add edx, eax
add ebx, 0x6ed9eba1
rol edx, 0xe
mov eax, ecx
not eax
or eax, edx
xor eax, edi
add eax, ebx
mov ebx, dword [ebp - 0x40]
add esi, eax
add ebx, 0x6ed9eba1
mov eax, edx
rol esi, 9
not eax
or eax, esi
xor eax, ecx
add eax, ebx
add edi, eax
rol edi, 0xd
mov ebx, dword [ebp - 0x58]
mov eax, esi
not eax
add ebx, 0x6ed9eba1
or eax, edi
xor eax, edx
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x5c]
add ecx, eax
mov eax, edi
not eax
rol ecx, 0xf
or eax, ecx
xor eax, esi
add eax, ebx
add edx, eax
lea ebx, [ecx + 0x6ed9eba1]
mov eax, ecx
rol edx, 0xe
not eax
or eax, edx
xor eax, edi
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x44]
add esi, eax
mov eax, edx
not eax
rol esi, 8
or eax, esi
xor eax, ecx
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x60]
add edi, eax
mov eax, esi
not eax
rol edi, 0xd
or eax, edi
xor eax, edx
add eax, dword [ebp - 0x48]
add ebx, eax
mov eax, edi
not eax
rol ebx, 6
or eax, ebx
xor eax, esi
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x2c]
add edx, eax
mov eax, ebx
not eax
rol edx, 5
or eax, edx
xor eax, edi
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x34]
add esi, eax
mov eax, edx
not eax
rol esi, 0xc
or eax, esi
mov ecx, esi
xor eax, ebx
not ecx
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x4c]
add edi, eax
mov eax, ecx
rol edi, 7
or eax, edi
and ecx, edi
xor eax, edx
add eax, 0x6ed9eba1
add eax, dword [ebp - 0x30]
add ebx, eax
mov eax, esi
rol ebx, 5
and eax, ebx
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x5c]
add edx, ecx
rol edx, 0xb
mov ecx, edi
not ecx
mov eax, edi
and ecx, ebx
and eax, edx
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x3c]
add esi, ecx
mov ecx, ebx
not ecx
rol esi, 0xc
and ecx, edx
mov eax, esi
and eax, ebx
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x34]
add edi, ecx
mov ecx, edx
not ecx
rol edi, 0xe
and ecx, esi
mov eax, edi
and eax, edx
or ecx, eax
mov eax, esi
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x38]
add ebx, ecx
mov ecx, esi
not ecx
rol ebx, 0xf
and ecx, edi
and eax, ebx
or ecx, eax
mov eax, edi
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x60]
add edx, ecx
mov ecx, edi
not ecx
rol edx, 0xe
and ecx, ebx
and eax, edx
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x40]
add esi, ecx
mov ecx, ebx
not ecx
rol esi, 0xf
and ecx, edx
mov eax, esi
and eax, ebx
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x30]
add edi, ecx
mov ecx, edx
not ecx
rol edi, 9
and ecx, esi
mov eax, edi
and eax, edx
or ecx, eax
mov eax, esi
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x50]
add ebx, ecx
mov ecx, esi
not ecx
rol ebx, 8
and ecx, edi
and eax, ebx
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x2c]
add edx, ecx
rol edx, 9
mov ecx, edi
mov eax, edi
not ecx
and eax, edx
and ecx, ebx
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x54]
add esi, ecx
mov ecx, ebx
not ecx
rol esi, 0xe
and ecx, edx
mov eax, esi
and eax, ebx
or ecx, eax
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x44]
add edi, ecx
mov ecx, edx
not ecx
rol edi, 5
and ecx, esi
mov eax, edi
and eax, edx
or ecx, eax
mov eax, esi
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x24]
add ebx, ecx
mov ecx, esi
not ecx
rol ebx, 6
and ecx, edi
mov dword [ebp - 0x20], ebx
and eax, ebx
or ecx, eax
mov eax, edi
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x28]
add edx, ecx
mov ecx, edi
not ecx
rol edx, 8
and ecx, ebx
mov dword [ebp - 0xc], edx
and eax, edx
or ecx, eax
lea eax, [esi - 0x70e44324]
add ecx, dword [ebp - 0x4c]
add eax, ecx
mov ecx, ebx
not ecx
rol eax, 6
and ecx, edx
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 4]
and eax, ebx
or ecx, eax
lea eax, [edi - 0x70e44324]
add ecx, dword [ebp - 0x48]
mov edi, dword [ebp - 8]
add eax, ecx
mov esi, dword [edx + 0x60]
mov ecx, esi
mov ebx, dword [edx + 0x5c]
not ecx
mov edx, dword [edx + 0x54]
and ecx, ebx
rol eax, 5
add edx, 0x50a28be6
mov dword [ebp - 0x1c], eax
mov eax, esi
and eax, edi
or ecx, eax
add ecx, dword [ebp - 0x4c]
add edx, ecx
mov ecx, ebx
not ecx
rol edx, 8
and ecx, edi
mov eax, ebx
add esi, 0x50a28be6
and eax, edx
or ecx, eax
add ecx, dword [ebp - 0x28]
add esi, ecx
mov ecx, edi
not ecx
rol esi, 9
and ecx, edx
mov eax, esi
and eax, edi
lea edi, [ebx + 0x50a28be6]
or ecx, eax
mov ebx, dword [ebp - 8]
add ecx, dword [ebp - 0x44]
add ebx, 0x50a28be6
add edi, ecx
mov ecx, edx
not ecx
rol edi, 9
and ecx, esi
mov eax, edi
and eax, edx
or ecx, eax
mov eax, esi
add ecx, dword [ebp - 0x60]
add ebx, ecx
mov ecx, esi
not ecx
rol ebx, 0xb
and ecx, edi
and eax, ebx
or ecx, eax
mov eax, edi
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x3c]
add edx, ecx
mov ecx, edi
not ecx
rol edx, 0xd
and ecx, ebx
and eax, edx
or ecx, eax
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x58]
add esi, ecx
mov ecx, ebx
not ecx
rol esi, 0xf
and ecx, edx
mov eax, esi
and eax, ebx
or ecx, eax
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x34]
add edi, ecx
mov ecx, edx
not ecx
rol edi, 0xf
and ecx, esi
mov eax, edi
and eax, edx
or ecx, eax
mov eax, esi
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x50]
add ebx, ecx
mov ecx, esi
not ecx
rol ebx, 5
and ecx, edi
and eax, ebx
or ecx, eax
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x2c]
add edx, ecx
mov ecx, edi
not ecx
rol edx, 7
and ecx, ebx
mov eax, edi
and eax, edx
or ecx, eax
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x48]
add esi, ecx
mov ecx, ebx
not ecx
rol esi, 7
and ecx, edx
mov eax, esi
and eax, ebx
or ecx, eax
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x24]
add edi, ecx
mov ecx, edx
not ecx
rol edi, 8
and ecx, esi
mov eax, edi
and eax, edx
or ecx, eax
mov eax, esi
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x40]
add ebx, ecx
mov ecx, esi
not ecx
rol ebx, 0xb
and ecx, edi
and eax, ebx
or ecx, eax
mov eax, edi
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x5c]
add edx, ecx
mov ecx, edi
not ecx
rol edx, 0xe
and ecx, ebx
and eax, edx
or ecx, eax
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x38]
add esi, ecx
mov ecx, ebx
not ecx
rol esi, 0xe
and ecx, edx
mov eax, esi
and eax, ebx
add ebx, 0x50a28be6
or ecx, eax
add ecx, 0x50a28be6
add ecx, dword [ebp - 0x54]
add edi, ecx
mov ecx, edx
rol edi, 0xc
not ecx
and ecx, esi
mov eax, edi
and eax, edx
or ecx, eax
mov eax, edi
add ecx, dword [ebp - 0x30]
not eax
add ecx, ebx
mov ebx, dword [ebp - 0x48]
rol ecx, 6
add ebx, 0x5c4dd124
or eax, ecx
xor eax, esi
add eax, ebx
add edx, eax
mov eax, ecx
not eax
rol edx, 9
or eax, edx
xor eax, edi
add eax, 0x5c4dd124
add eax, dword [ebp - 0x34]
add esi, eax
mov ebx, dword [ebp - 0x38]
rol esi, 0xd
mov eax, edx
not eax
add ebx, 0x5c4dd124
or eax, esi
xor eax, ecx
add eax, 0x5c4dd124
add eax, dword [ebp - 0x54]
add edi, eax
mov eax, esi
not eax
rol edi, 0xf
or eax, edi
xor eax, edx
add eax, 0x5c4dd124
add eax, dword [ebp - 0x44]
add ecx, eax
mov eax, edi
not eax
rol ecx, 7
or eax, ecx
xor eax, esi
add eax, 0x5c4dd124
add eax, dword [ebp - 0x60]
add edx, eax
mov eax, ecx
not eax
rol edx, 0xc
or eax, edx
xor eax, edi
add eax, 0x5c4dd124
add eax, dword [ebp - 0x2c]
add esi, eax
mov eax, edx
not eax
rol esi, 8
or eax, esi
xor eax, ecx
add eax, 0x5c4dd124
add eax, dword [ebp - 0x4c]
add edi, eax
mov eax, esi
not eax
rol edi, 9
or eax, edi
xor eax, edx
add eax, ebx
mov ebx, dword [ebp - 0x24]
add ecx, eax
add ebx, 0x5c4dd124
mov eax, edi
rol ecx, 0xb
not eax
or eax, ecx
xor eax, esi
add eax, 0x5c4dd124
add eax, dword [ebp - 0x28]
add edx, eax
mov eax, ecx
not eax
rol edx, 7
or eax, edx
xor eax, edi
add eax, ebx
mov ebx, dword [ebp - 0x40]
add esi, eax
add ebx, 0x5c4dd124
rol esi, 7
mov eax, edx
not eax
or eax, esi
xor eax, ecx
add eax, ebx
add edi, eax
mov eax, esi
rol edi, 0xc
not eax
or eax, edi
xor eax, edx
mov ebx, dword [ebp - 0x50]
add eax, 0x5c4dd124
add ebx, 0x5c4dd124
add eax, dword [ebp - 0x30]
add ecx, eax
mov eax, edi
rol ecx, 7
not eax
or eax, ecx
xor eax, esi
add eax, ebx
mov ebx, dword [ebp - 0x3c]
add edx, eax
add ebx, 0x5c4dd124
mov eax, ecx
rol edx, 6
not eax
or eax, edx
xor eax, edi
add eax, ebx
lea ebx, [ecx + 0x5c4dd124]
add esi, eax
mov eax, edx
not eax
rol esi, 0xf
or eax, esi
xor eax, ecx
add eax, 0x5c4dd124
add eax, dword [ebp - 0x5c]
add edi, eax
mov eax, esi
not eax
rol edi, 0xd
or eax, edi
xor eax, edx
add eax, dword [ebp - 0x58]
add ebx, eax
mov eax, edi
rol ebx, 0xb
and eax, ebx
mov ecx, ebx
not ecx
and ecx, esi
or ecx, eax
mov eax, ebx
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x24]
add edx, ecx
rol edx, 9
and eax, edx
mov ecx, edx
not ecx
and ecx, edi
or ecx, eax
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x4c]
add esi, ecx
rol esi, 7
mov ecx, esi
mov eax, esi
not ecx
and eax, edx
and ecx, ebx
or ecx, eax
mov eax, esi
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x5c]
add edi, ecx
rol edi, 0xf
mov ecx, edi
and eax, edi
not ecx
and ecx, edx
or ecx, eax
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x54]
add ebx, ecx
rol ebx, 0xb
mov ecx, ebx
not ecx
and ecx, esi
mov eax, edi
and eax, ebx
or ecx, eax
mov eax, ebx
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x44]
add edx, ecx
rol edx, 8
and eax, edx
mov ecx, edx
not ecx
and ecx, edi
or ecx, eax
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x28]
add esi, ecx
rol esi, 6
mov ecx, esi
mov eax, esi
not ecx
and eax, edx
and ecx, ebx
or ecx, eax
mov eax, esi
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x48]
add edi, ecx
rol edi, 6
and eax, edi
mov ecx, edi
not ecx
and ecx, edx
or ecx, eax
mov eax, edi
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x3c]
add ebx, ecx
rol ebx, 0xe
and eax, ebx
mov ecx, ebx
not ecx
and ecx, esi
or ecx, eax
mov eax, ebx
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x34]
add edx, ecx
rol edx, 0xc
and eax, edx
mov ecx, edx
not ecx
and ecx, edi
or ecx, eax
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x40]
add esi, ecx
rol esi, 0xd
mov ecx, esi
mov eax, esi
not ecx
and eax, edx
and ecx, ebx
or ecx, eax
mov eax, esi
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x30]
add edi, ecx
rol edi, 5
mov ecx, edi
mov dword [ebp - 0x10], edi
not ecx
and eax, edi
and ecx, edx
or ecx, eax
add ecx, 0x6d703ef3
add ecx, dword [ebp - 0x58]
add ebx, ecx
rol ebx, 0xe
mov dword [ebp - 0x14], ebx
mov ecx, ebx
not ecx
mov eax, edi
and ecx, esi
lea edi, [edx + 0x6d703ef3]
and eax, ebx
mov edx, dword [ebp - 0x10]
or ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x38]
lea ebx, [esi + 0x6d703ef3]
add edi, ecx
mov esi, dword [ebp - 0x14]
rol edi, 0xd
and eax, edi
mov ecx, edi
not ecx
and ecx, edx
add edx, 0x6d703ef3
or ecx, eax
add ecx, dword [ebp - 0x60]
add ebx, ecx
rol ebx, 0xd
mov ecx, ebx
mov eax, ebx
and eax, edi
not ecx
and ecx, esi
or ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x50]
add edx, ecx
rol edx, 7
and eax, edx
mov ecx, edx
not ecx
and ecx, edi
or ecx, eax
lea eax, [esi + 0x6d703ef3]
add ecx, dword [ebp - 0x2c]
mov esi, ebx
add eax, ecx
xor esi, edx
rol eax, 5
xor esi, eax
add esi, dword [ebp - 0x40]
add esi, edi
mov edi, edx
xor edi, eax
rol esi, 0xf
xor edi, esi
add edi, dword [ebp - 0x48]
add edi, ebx
rol edi, 5
mov ebx, edi
xor ebx, eax
xor ebx, esi
add ebx, dword [ebp - 0x50]
add ebx, edx
mov edx, edi
rol ebx, 8
xor edx, ebx
mov ecx, edx
xor ecx, esi
add ecx, dword [ebp - 0x5c]
add ecx, eax
mov eax, ebx
rol ecx, 0xb
xor edx, ecx
xor eax, ecx
add edx, dword [ebp - 0x54]
add edx, esi
rol edx, 0xe
xor eax, edx
mov dword [ebp - 0x14], edx
add eax, dword [ebp - 0x34]
add eax, edi
rol eax, 0xe
mov esi, eax
xor esi, ecx
xor esi, edx
add esi, dword [ebp - 0x24]
add esi, ebx
mov ebx, eax
rol esi, 6
xor ebx, esi
mov edx, ebx
xor edx, dword [ebp - 0x14]
add edx, dword [ebp - 0x60]
add edx, ecx
mov ecx, esi
rol edx, 0xe
xor ebx, edx
xor ecx, edx
add ebx, dword [ebp - 0x4c]
add ebx, dword [ebp - 0x14]
rol ebx, 6
xor ecx, ebx
add ecx, dword [ebp - 0x30]
add ecx, eax
rol ecx, 9
mov edi, ecx
xor edi, edx
xor edi, ebx
add edi, dword [ebp - 0x58]
add edi, esi
mov esi, ecx
rol edi, 0xc
xor esi, edi
mov eax, esi
xor eax, ebx
add eax, dword [ebp - 0x2c]
add eax, edx
rol eax, 9
xor esi, eax
add esi, dword [ebp - 0x3c]
add esi, ebx
mov ebx, edi
xor ebx, eax
rol esi, 0xc
xor ebx, esi
add ebx, dword [ebp - 0x44]
add ebx, ecx
rol ebx, 5
mov edx, ebx
mov dword [ebp - 0x14], ebx
xor edx, eax
mov ecx, ebx
mov ebx, dword [ebp - 4]
xor edx, esi
add edx, dword [ebp - 0x38]
add edx, edi
rol edx, 0xf
xor ecx, edx
xor ecx, esi
add ecx, dword [ebp - 0x28]
add ecx, eax
mov eax, dword [ebx + 0x5c]
add eax, dword [ebp - 0x18]
add eax, esi
rol ecx, 8
mov esi, ebx
mov dword [esi + 0x58], eax
mov eax, dword [esi + 0x60]
add eax, ecx
mov ecx, dword [ebp - 0xc]
add eax, ecx
not ecx
and ecx, dword [ebp - 0x18]
mov dword [esi + 0x5c], eax
mov eax, dword [ebp - 0x1c]
and eax, dword [ebp - 0xc]
or ecx, eax
mov eax, dword [ebp - 0x20]
add ecx, dword [ebp - 0x58]
add eax, 0x8f1bbcdc
add eax, ecx
mov ecx, ebx
rol eax, 0xc
add eax, dword [ecx + 0x54]
add eax, edx
mov dword [ecx + 0x60], eax
mov eax, dword [ebp - 8]
add eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x1c]
pop edi
pop esi
mov dword [ecx + 0x54], eax
pop ebx
mov esp, ebp
pop ebp
ret