Function at 0x545b60
Capabilities:
Encrypt data using chaskey

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x5c
mov eax, dword [0x717f80]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
mov dword [ebp - 0x5c], eax
push esi
mov ecx, dword [eax]
lea esi, [ebp - 0x44]
mov ebx, dword [eax + 8]
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x4c], ecx
mov ecx, dword [eax + 4]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp + 0xc]
push edi
mov dword [ebp - 0x50], ecx
add eax, 2
mov edi, 0x10
nop
movzx edx, byte [eax + 1]
lea esi, [esi + 4]
movzx ecx, byte [eax]
lea eax, [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 [esi - 4], edx
sub edi, 1
jne 0x545ba0
mov esi, dword [ebp - 0x50]
mov eax, ebx
and eax, esi
mov ecx, esi
not ecx
and ecx, dword [ebp - 0x48]
or ecx, eax
mov eax, dword [ebp - 0x4c]
add ecx, dword [ebp - 0x44]
add eax, ecx
mov edx, eax
shl eax, 3
shr edx, 0x1d
or edx, eax
mov eax, esi
and eax, edx
mov ecx, edx
not ecx
and ecx, ebx
or ecx, eax
mov eax, dword [ebp - 0x48]
add ecx, dword [ebp - 0x40]
add eax, ecx
mov edi, eax
shl eax, 7
shr edi, 0x19
or edi, eax
mov ecx, edi
mov eax, edi
not ecx
and eax, edx
and ecx, esi
or ecx, eax
add ecx, dword [ebp - 0x3c]
add ebx, ecx
mov dword [ebp - 0x4c], ebx
mov eax, dword [ebp - 0x4c]
shl eax, 0xb
shr ebx, 0x15
or ebx, eax
mov eax, edi
and eax, ebx
mov ecx, ebx
not ecx
and ecx, edx
or ecx, eax
mov eax, ebx
add ecx, dword [ebp - 0x38]
add esi, ecx
mov dword [ebp - 0x50], esi
mov ecx, dword [ebp - 0x50]
shr ecx, 0xd
shl esi, 0x13
or esi, ecx
and eax, esi
mov dword [ebp - 0x4c], esi
mov ecx, esi
not ecx
and ecx, edi
or ecx, eax
add ecx, dword [ebp - 0x34]
add edx, ecx
mov esi, edx
shr esi, 0x1d
lea eax, [edx*8]
mov edx, dword [ebp - 0x4c]
or esi, eax
mov eax, edx
mov ecx, esi
and eax, esi
not ecx
and ecx, ebx
or ecx, eax
add ecx, dword [ebp - 0x30]
add edi, ecx
mov eax, edi
shl edi, 7
shr eax, 0x19
or eax, edi
mov dword [ebp - 0x4c], eax
mov ecx, eax
not ecx
and eax, esi
and ecx, edx
or ecx, eax
add ecx, dword [ebp - 0x2c]
add ebx, ecx
mov edi, ebx
shl ebx, 0xb
shr edi, 0x15
or edi, ebx
mov ebx, dword [ebp - 0x4c]
mov ecx, edi
mov dword [ebp - 0x50], edi
not ecx
mov eax, ebx
and ecx, esi
and eax, edi
or ecx, eax
add ecx, dword [ebp - 0x28]
add edx, ecx
mov eax, edx
shr edx, 0xd
shl eax, 0x13
or eax, edx
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x48], eax
mov ecx, eax
not ecx
mov eax, edi
and eax, dword [ebp - 0x48]
and ecx, ebx
or ecx, eax
add ecx, dword [ebp - 0x24]
add esi, ecx
mov edi, esi
shr edi, 0x1d
lea eax, [esi*8]
mov esi, dword [ebp - 0x48]
or edi, eax
mov eax, esi
and eax, edi
mov ecx, edi
not ecx
and ecx, edx
or ecx, eax
add ecx, dword [ebp - 0x20]
add ebx, ecx
mov eax, ebx
shl ebx, 7
shr eax, 0x19
or eax, ebx
mov ebx, eax
and eax, edi
mov ecx, ebx
not ecx
and ecx, esi
or ecx, eax
add ecx, dword [ebp - 0x1c]
add edx, ecx
mov eax, edx
shl edx, 0xb
shr eax, 0x15
or eax, edx
mov ecx, eax
mov dword [ebp - 0x48], eax
not ecx
mov eax, ebx
and eax, dword [ebp - 0x48]
and ecx, edi
or ecx, eax
add ecx, dword [ebp - 0x18]
add esi, ecx
mov edx, esi
shr esi, 0xd
shl edx, 0x13
or edx, esi
mov esi, dword [ebp - 0x48]
mov ecx, edx
mov dword [ebp - 0x50], edx
not ecx
and ecx, ebx
mov eax, esi
and eax, edx
or ecx, eax
add ecx, dword [ebp - 0x14]
add edi, ecx
mov edx, edi
shr edx, 0x1d
lea eax, [edi*8]
or edx, eax
mov eax, dword [ebp - 0x50]
and eax, edx
mov ecx, edx
not ecx
and ecx, esi
or ecx, eax
add ecx, dword [ebp - 0x10]
add ebx, ecx
mov edi, ebx
shl ebx, 7
shr edi, 0x19
or edi, ebx
mov ecx, edi
mov dword [ebp - 0x4c], edi
not ecx
mov eax, edi
and ecx, dword [ebp - 0x50]
and eax, edx
or ecx, eax
mov eax, edi
add ecx, dword [ebp - 0xc]
add esi, ecx
mov ebx, esi
shl esi, 0xb
shr ebx, 0x15
or ebx, esi
and eax, ebx
mov dword [ebp - 0x48], ebx
mov ecx, ebx
not ecx
and ecx, edx
add edx, 0x5a827999
or ecx, eax
mov eax, dword [ebp - 0x50]
add ecx, dword [ebp - 8]
add eax, ecx
mov ecx, ebx
mov esi, eax
shr eax, 0xd
shl esi, 0x13
or esi, eax
mov eax, ebx
and eax, esi
or ecx, esi
and ecx, edi
or eax, ecx
mov ecx, esi
add eax, dword [ebp - 0x44]
add eax, edx
mov edx, esi
mov edi, eax
shl eax, 3
shr edi, 0x1d
or edi, eax
or edx, edi
and ecx, edi
mov eax, edx
and eax, ebx
mov ebx, dword [ebp - 0x4c]
or eax, ecx
add ebx, 0x5a827999
add eax, dword [ebp - 0x34]
add eax, ebx
mov ebx, eax
shl eax, 5
shr ebx, 0x1b
or ebx, eax
mov eax, dword [ebp - 0x48]
and edx, ebx
or edx, ecx
add edx, dword [ebp - 0x24]
add eax, 0x5a827999
add eax, edx
add esi, 0x5a827999
mov edx, eax
shl eax, 9
shr edx, 0x17
or edx, eax
mov ecx, edx
mov dword [ebp - 0x4c], edx
or ecx, edi
mov eax, edx
and eax, edi
and ecx, ebx
or eax, ecx
add edi, 0x5a827999
add eax, dword [ebp - 0x14]
mov ecx, edx
add eax, esi
mov esi, eax
shl eax, 0xd
shr esi, 0x13
or esi, eax
mov eax, edx
and eax, esi
mov dword [ebp - 0x48], esi
or ecx, esi
mov edx, esi
and ecx, ebx
add ebx, 0x5a827999
or eax, ecx
mov ecx, esi
add eax, dword [ebp - 0x40]
add eax, edi
mov esi, dword [ebp - 0x4c]
mov edi, eax
shl eax, 3
shr edi, 0x1d
or edi, eax
or edx, edi
and ecx, edi
mov eax, edx
and eax, esi
or eax, ecx
add eax, dword [ebp - 0x30]
add eax, ebx
mov ebx, eax
shl eax, 5
shr ebx, 0x1b
or ebx, eax
lea eax, [esi + 0x5a827999]
and edx, ebx
or edx, ecx
add edx, dword [ebp - 0x20]
add eax, edx
mov esi, eax
shl eax, 9
shr esi, 0x17
or esi, eax
mov ecx, esi
mov eax, esi
and eax, edi
or ecx, edi
and ecx, ebx
add edi, 0x5a827999
or ecx, eax
mov eax, dword [ebp - 0x48]
add ecx, dword [ebp - 0x10]
add eax, 0x5a827999
add eax, ecx
mov ecx, esi
mov edx, eax
shl eax, 0xd
shr edx, 0x13
or edx, eax
mov eax, esi
or ecx, edx
mov dword [ebp - 0x4c], edx
and eax, edx
and ecx, ebx
or eax, ecx
add eax, dword [ebp - 0x3c]
add eax, edi
mov ecx, eax
mov edi, dword [ebp - 0x4c]
shl eax, 3
add ebx, 0x5a827999
shr ecx, 0x1d
or ecx, eax
or edx, ecx
mov dword [ebp - 0x48], ecx
mov eax, edx
mov ecx, edi
and ecx, dword [ebp - 0x48]
and eax, esi
or eax, ecx
add edi, 0x5a827999
add eax, dword [ebp - 0x2c]
add eax, ebx
mov ebx, eax
shl eax, 5
shr ebx, 0x1b
or ebx, eax
and edx, ebx
mov dword [ebp - 0x4c], ebx
or edx, ecx
add edx, dword [ebp - 0x1c]
lea eax, [edx + 0x5a827999]
mov edx, dword [ebp - 0x48]
add eax, esi
mov esi, eax
shl eax, 9
shr esi, 0x17
or esi, eax
mov ecx, esi
mov dword [ebp - 0x50], esi
or ecx, edx
mov eax, esi
and eax, edx
and ecx, ebx
or eax, ecx
add edx, 0x5a827999
add eax, dword [ebp - 0xc]
mov ecx, esi
add eax, edi
mov edi, eax
shl eax, 0xd
shr edi, 0x13
or edi, eax
mov eax, esi
and eax, edi
mov dword [ebp - 0x48], edi
or ecx, edi
and ecx, ebx
or eax, ecx
mov ecx, edi
add eax, dword [ebp - 0x38]
add eax, edx
mov edx, edi
mov ebx, eax
shl eax, 3
shr ebx, 0x1d
or ebx, eax
or edx, ebx
mov dword [ebp - 0x54], ebx
mov eax, edx
and ecx, ebx
and eax, esi
mov esi, dword [ebp - 0x4c]
or eax, ecx
add esi, 0x5a827999
add eax, dword [ebp - 0x28]
add eax, esi
mov esi, eax
shl eax, 5
shr esi, 0x1b
or esi, eax
mov eax, dword [ebp - 0x50]
and edx, esi
add eax, 0x5a827999
or edx, ecx
add edx, dword [ebp - 0x18]
add eax, edx
mov edi, eax
shl eax, 9
shr edi, 0x17
or edi, eax
mov ecx, edi
mov eax, edi
and eax, ebx
or ecx, ebx
and ecx, esi
or ecx, eax
mov eax, dword [ebp - 0x48]
add ecx, dword [ebp - 8]
add eax, 0x5a827999
add eax, ecx
mov ecx, dword [ebp - 0x54]
mov ebx, eax
add ecx, 0x6ed9eba1
shl eax, 0xd
shr ebx, 0x13
or ebx, eax
mov eax, esi
xor eax, edi
add esi, 0x6ed9eba1
xor eax, ebx
add eax, dword [ebp - 0x44]
add eax, ecx
mov edx, eax
shl eax, 3
shr edx, 0x1d
or edx, eax
mov eax, edi
xor eax, ebx
add edi, 0x6ed9eba1
xor eax, edx
add eax, dword [ebp - 0x24]
add eax, esi
mov esi, eax
shl eax, 9
shr esi, 0x17
or esi, eax
mov eax, esi
mov ecx, esi
xor eax, ebx
add esi, 0x6ed9eba1
xor eax, edx
add ebx, 0x6ed9eba1
add eax, dword [ebp - 0x34]
add eax, edi
mov edi, eax
shl eax, 0xb
shr edi, 0x15
or edi, eax
xor ecx, edi
mov eax, ecx
xor eax, edx
add eax, dword [ebp - 0x14]
add eax, ebx
mov ebx, eax
shl eax, 0xf
shr ebx, 0x11
or ebx, eax
xor ecx, ebx
add ecx, dword [ebp - 0x3c]
lea eax, [ecx + 0x6ed9eba1]
add eax, edx
mov edx, eax
shl eax, 3
shr edx, 0x1d
or edx, eax
mov eax, edi
xor eax, ebx
xor eax, edx
add eax, dword [ebp - 0x1c]
add eax, esi
mov esi, eax
shl eax, 9
shr esi, 0x17
or esi, eax
mov eax, esi
xor eax, ebx
xor eax, edx
add eax, dword [ebp - 0x2c]
add edi, 0x6ed9eba1
mov ecx, esi
add eax, edi
add ebx, 0x6ed9eba1
mov edi, eax
add esi, 0x6ed9eba1
shl eax, 0xb
shr edi, 0x15
or edi, eax
xor ecx, edi
mov eax, ecx
xor eax, edx
add eax, dword [ebp - 0xc]
add eax, ebx
mov ebx, eax
shl eax, 0xf
shr ebx, 0x11
or ebx, eax
xor ecx, ebx
add ecx, dword [ebp - 0x40]
lea eax, [ecx + 0x6ed9eba1]
add eax, edx
mov edx, eax
shl eax, 3
shr edx, 0x1d
or edx, eax
mov eax, edi
xor eax, ebx
add edi, 0x6ed9eba1
xor eax, edx
add eax, dword [ebp - 0x20]
add eax, esi
mov ecx, eax
shl eax, 9
shr ecx, 0x17
or ecx, eax
mov eax, ecx
mov dword [ebp - 0x54], ecx
xor eax, ebx
add ebx, 0x6ed9eba1
xor eax, edx
add eax, dword [ebp - 0x30]
add eax, edi
mov edi, eax
shl eax, 0xb
shr edi, 0x15
or edi, eax
xor ecx, edi
mov eax, ecx
xor eax, edx
add eax, dword [ebp - 0x10]
add eax, ebx
mov ebx, eax
shl eax, 0xf
shr ebx, 0x11
or ebx, eax
xor ecx, ebx
add ecx, dword [ebp - 0x38]
lea eax, [ecx + 0x6ed9eba1]
mov ecx, dword [ebp - 0x54]
add eax, edx
add ecx, 0x6ed9eba1
mov esi, eax
shl eax, 3
shr esi, 0x1d
or esi, eax
mov eax, edi
xor eax, ebx
add edi, 0x6ed9eba1
xor eax, esi
add eax, dword [ebp - 0x18]
add eax, ecx
mov edx, eax
shl eax, 9
shr edx, 0x17
or edx, eax
mov eax, edx
xor eax, ebx
xor eax, esi
add eax, dword [ebp - 0x28]
add eax, edi
mov edi, dword [ebp - 0x5c]
mov ecx, eax
shl eax, 0xb
add ebx, 0x6ed9eba1
shr ecx, 0x15
or ecx, eax
mov eax, dword [ebp - 0x58]
add dword [edi + 8], ecx
add eax, esi
add dword [edi + 0xc], edx
mov dword [edi], eax
mov eax, edx
xor eax, ecx
mov ecx, dword [ebp - 4]
xor eax, esi
xor ecx, ebp
add eax, dword [ebp - 8]
add eax, ebx
ror eax, 0x11
add dword [edi + 4], eax
pop edi
pop esi
pop ebx
call fcn.00622073
mov esp, ebp
pop ebp
ret 8