Function at 0x4272e0
Capabilities:
Encrypt data using rc4 prga
Hash data using sha1

Disassembly:
push ebp
push edi
push esi
push ebx
mov ebx, ecx
sub esp, 0x14
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov esi, eax
mov dword [esp], eax
mov dword [esp + 0xc], eax
shr eax, 3
mov edi, edx
mov dword [esp + 4], edx
and eax, 0x3c
add eax, ecx
mov edx, dword [eax + 0x1c]
shl edx, 8
or dl, 0x80
add esi, 8
mov dword [eax + 0x1c], edx
mov eax, esi
adc edi, 0
and eax, 0x1ff
mov dword [ecx], esi
mov dword [ecx + 4], edi
test eax, eax
je 0x427369
mov esi, esi
lea edi, [edi]
mov ecx, esi
mov eax, esi
xor edx, edx
and eax, 0x1ff
mov ebp, edx
xor eax, 0x1c0
or ebp, eax
je 0x427380
mov eax, ecx
shr eax, 3
and eax, 0x3c
shl dword [ebx + eax + 0x1c], 8
add esi, 8
adc edi, 0
add ecx, 8
mov dword [ebx], esi
test ecx, 0x1ff
mov dword [ebx + 4], edi
jne 0x427332
mov ecx, ebx
call fcn.00425e80
mov esi, dword [ebx]
mov edi, dword [ebx + 4]
jmp 0x427330
mov eax, esi
mov ecx, dword [esp + 4]
shr eax, 3
and eax, 0x3c
add eax, ebx
shr ecx, 0x18
mov edx, dword [eax + 0x1c]
shl edx, 8
or edx, ecx
add esi, 8
mov dword [eax + 0x1c], edx
mov eax, esi
adc edi, 0
test eax, 0x1ff
mov dword [ebx], esi
mov dword [ebx + 4], edi
jne 0x4273be
mov ecx, ebx
call fcn.00425e80
mov esi, dword [ebx]
mov edi, dword [ebx + 4]
mov eax, esi
shr eax, 3
mov ecx, dword [esp + 4]
and eax, 0x3c
add eax, ebx
mov edx, dword [eax + 0x1c]
shr ecx, 0x10
movzx ecx, cl
shl edx, 8
or edx, ecx
add esi, 8
mov dword [eax + 0x1c], edx
mov eax, esi
adc edi, 0
test eax, 0x1ff
mov dword [ebx], esi
mov dword [ebx + 4], edi
jne 0x4273fd
mov ecx, ebx
call fcn.00425e80
mov esi, dword [ebx]
mov edi, dword [ebx + 4]
mov eax, esi
shr eax, 3
mov ecx, dword [esp + 4]
and eax, 0x3c
add eax, ebx
mov edx, dword [eax + 0x1c]
movzx ecx, ch
shl edx, 8
or edx, ecx
add esi, 8
mov dword [eax + 0x1c], edx
mov eax, esi
adc edi, 0
test eax, 0x1ff
mov dword [ebx], esi
mov dword [ebx + 4], edi
jne 0x427439
mov ecx, ebx
call fcn.00425e80
mov esi, dword [ebx]
mov edi, dword [ebx + 4]
mov eax, esi
shr eax, 3
mov ecx, dword [esp + 4]
and eax, 0x3c
add eax, ebx
mov edx, dword [eax + 0x1c]
movzx ecx, cl
shl edx, 8
or edx, ecx
add esi, 8
adc edi, 0
test esi, 0x1ff
mov dword [eax + 0x1c], edx
mov ecx, esi
mov dword [ebx], esi
mov dword [ebx + 4], edi
jne 0x427476
mov ecx, ebx
call fcn.00425e80
mov esi, dword [ebx]
mov edi, dword [ebx + 4]
mov ecx, esi
shr ecx, 3
mov eax, dword [esp]
mov edx, dword [esp + 4]
and ecx, 0x3c
add ecx, ebx
mov ebp, dword [ecx + 0x1c]
shrd eax, edx, 0x18
shl ebp, 8
movzx eax, al
or eax, ebp
add esi, 8
adc edi, 0
test esi, 0x1ff
mov dword [ecx + 0x1c], eax
mov dword [ebx], esi
mov dword [ebx + 4], edi
mov ecx, esi
jne 0x4274ba
mov ecx, ebx
call fcn.00425e80
mov esi, dword [ebx]
mov edi, dword [ebx + 4]
mov ecx, esi
shr ecx, 3
mov eax, dword [esp]
mov edx, dword [esp + 4]
and ecx, 0x3c
add ecx, ebx
mov ebp, dword [ecx + 0x1c]
shrd eax, edx, 0x10
shl ebp, 8
movzx eax, al
or eax, ebp
add esi, 8
adc edi, 0
test esi, 0x1ff
mov dword [ecx + 0x1c], eax
mov dword [ebx], esi
mov dword [ebx + 4], edi
mov ecx, esi
jne 0x4274fe
mov ecx, ebx
call fcn.00425e80
mov esi, dword [ebx]
mov edi, dword [ebx + 4]
mov ecx, esi
shr ecx, 3
mov eax, dword [esp]
mov edx, dword [esp + 4]
and ecx, 0x3c
add ecx, ebx
mov ebp, dword [ecx + 0x1c]
shrd eax, edx, 8
shl ebp, 8
movzx eax, al
or eax, ebp
add esi, 8
mov dword [ecx + 0x1c], eax
mov eax, esi
adc edi, 0
test eax, 0x1ff
mov dword [ebx], esi
mov dword [ebx + 4], edi
jne 0x427541
mov ecx, ebx
call fcn.00425e80
mov esi, dword [ebx]
mov edi, dword [ebx + 4]
mov eax, esi
shr eax, 3
movzx ecx, byte [esp + 0xc]
and eax, 0x3c
add eax, ebx
mov edx, dword [eax + 0x1c]
shl edx, 8
or edx, ecx
add esi, 8
adc edi, 0
mov dword [eax + 0x1c], edx
mov dword [ebx], esi
and esi, 0x1ff
mov dword [ebx + 4], edi
test esi, esi
jne 0x427575
mov ecx, ebx
call fcn.00425e80
mov eax, dword [ebx + 8]
lea edi, [ebx + 0x20]
lea ecx, [ebx + 0x1c]
mov dword [ebx], 0
mov dword [ebx + 4], 0
and edi, 0xfffffffc
mov dword [ebx + 8], 0x67452301
mov edx, eax
mov byte [ebx + 0x5f], al
sub ecx, edi
shr edx, 0x18
add ecx, 0x40
mov byte [ebx + 0x5c], dl
mov edx, eax
shr ecx, 2
shr edx, 0x10
mov byte [ebx + 0x5d], dl
mov edx, eax
mov eax, dword [ebx + 0xc]
shr edx, 8
mov dword [ebx + 0xc], 0xefcdab89
mov byte [ebx + 0x5e], dl
mov edx, eax
mov byte [ebx + 0x63], al
shr edx, 0x18
mov byte [ebx + 0x60], dl
mov edx, eax
shr edx, 0x10
mov byte [ebx + 0x61], dl
mov edx, eax
mov eax, dword [ebx + 0x10]
shr edx, 8
mov dword [ebx + 0x10], 0x98badcfe
mov byte [ebx + 0x62], dl
mov edx, eax
mov byte [ebx + 0x67], al
shr edx, 0x18
mov byte [ebx + 0x64], dl
mov edx, eax
shr edx, 0x10
mov byte [ebx + 0x65], dl
mov edx, eax
mov eax, dword [ebx + 0x14]
shr edx, 8
mov dword [ebx + 0x14], 0x10325476
mov byte [ebx + 0x66], dl
mov edx, eax
mov byte [ebx + 0x6b], al
shr edx, 0x18
mov byte [ebx + 0x68], dl
mov edx, eax
shr edx, 0x10
mov byte [ebx + 0x69], dl
mov edx, eax
mov eax, dword [ebx + 0x18]
shr edx, 8
mov dword [ebx + 0x18], 0xc3d2e1f0
mov byte [ebx + 0x6a], dl
mov edx, eax
mov byte [ebx + 0x6f], al
shr edx, 0x18
mov byte [ebx + 0x6c], dl
mov edx, eax
shr edx, 0x10
mov byte [ebx + 0x6d], dl
mov edx, eax
xor eax, eax
shr edx, 8
mov byte [ebx + 0x6e], dl
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x58], 0
rep stosd dword es:[edi], eax
add esp, 0x14
lea eax, [ebx + 0x5c]
pop ebx
pop esi
pop edi
pop ebp
ret