Function at 0x1d02ef0
Capabilities:
Encode data using xor
Hash data using sha1

Disassembly:
mov eax, dword [ecx + 0x28]
mov edx, dword [ecx + 0x2c]
bswap eax
mov dword [ecx + 0x28], eax
bswap edx
mov dword [ecx + 0x2c], edx
mov eax, dword [ecx + 0x30]
bswap eax
mov dword [ecx + 0x30], eax
mov eax, dword [ecx + 0x34]
bswap eax
mov dword [ecx + 0x34], eax
mov eax, dword [ecx + 0x38]
bswap eax
mov dword [ecx + 0x38], eax
mov eax, dword [ecx + 0x3c]
bswap eax
mov dword [ecx + 0x3c], eax
mov eax, dword [ecx + 0x40]
bswap eax
mov dword [ecx + 0x40], eax
mov eax, dword [ecx + 0x44]
bswap eax
mov dword [ecx + 0x44], eax
mov eax, dword [ecx + 0x48]
bswap eax
mov dword [ecx + 0x48], eax
mov eax, dword [ecx + 0x4c]
bswap eax
mov dword [ecx + 0x4c], eax
mov eax, dword [ecx + 0x50]
bswap eax
mov dword [ecx + 0x50], eax
mov eax, dword [ecx + 0x54]
bswap eax
mov dword [ecx + 0x54], eax
mov eax, dword [ecx + 0x58]
bswap eax
mov dword [ecx + 0x58], eax
mov eax, dword [ecx + 0x5c]
bswap eax
mov dword [ecx + 0x5c], eax
mov eax, dword [ecx + 0x60]
bswap eax
mov dword [ecx + 0x60], eax
mov eax, dword [ecx + 0x64]
bswap eax
mov dword [ecx + 0x64], eax
mov eax, 0x1a
mov edx, dword [ecx + eax*4 - 0x20]
xor edx, dword [ecx + eax*4 - 0xc]
xor edx, dword [ecx + eax*4 - 0x38]
xor edx, dword [ecx + eax*4 - 0x40]
rol edx, 1
mov dword [ecx + eax*4], edx
inc eax
cmp eax, 0x5a
jne 0x1d02f75
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x28
mov edi, dword [ecx + 0x14]
mov esi, dword [ecx + 0x18]
mov edx, dword [ecx + 0x1c]
mov eax, dword [ecx + 0x20]
mov dword [ebp - 0x10], ecx
mov ecx, dword [ecx + 0x24]
xor ebx, ebx
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x1c], ecx
jmp 0x1d03010
mov edi, ecx
mov ecx, eax
mov eax, esi
not eax
and eax, ecx
mov ecx, edi
add eax, edx
mov edi, esi
and edi, ecx
add edi, dword [ebp - 0x14]
add edi, eax
mov eax, dword [ebp - 0x10]
add edi, dword [eax + ebx*4 + 0x28]
mov eax, 0x5a827999
jmp 0x1d03001
xor edi, eax
xor edi, esi
mov eax, 0xca62c1d6
add edi, dword [ebp - 0x14]
add edi, edx
mov ecx, dword [ebp - 0x10]
add edi, dword [ecx + ebx*4 + 0x28]
mov ecx, dword [ebp - 0x34]
add edi, eax
rol esi, 0x1e
inc ebx
mov eax, ecx
mov edx, esi
cmp ebx, 0x50
je 0x1d03066
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x14], ecx
mov esi, dword [ebp - 0x18]
mov ecx, edx
mov edx, edi
mov dword [ebp - 0x18], edi
rol edx, 5
cmp ebx, 0x14
mov dword [ebp - 0x1c], eax
jb 0x1d02fc4
cmp ebx, 0x28
jb 0x1d0304d
cmp ebx, 0x3b
mov dword [ebp - 0x34], ecx
mov edi, ecx
ja 0x1d02fe9
mov ecx, eax
mov eax, edi
or eax, ecx
and eax, esi
and edi, ecx
or edi, eax
mov eax, 0x8f1bbcdc
jmp 0x1d02ff2
mov edi, ecx
xor edi, eax
xor edi, esi
add edi, edx
add edi, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
add edi, dword [eax + ebx*4 + 0x28]
mov eax, 0x6ed9eba1
jmp 0x1d03001
mov eax, dword [ebp - 0x10]
mov dword [eax], edi
mov ebx, ecx
mov ecx, dword [ebp - 0x20]
add ecx, edi
mov dword [eax + 0xc], ebx
mov dword [eax + 8], esi
mov edi, dword [ebp - 0x18]
mov dword [eax + 4], edi
mov edx, dword [ebp - 0x1c]
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], ecx
mov ecx, dword [ebp - 0x24]
add ecx, edi
mov dword [eax + 0x18], ecx
mov ecx, dword [ebp - 0x28]
add ecx, esi
mov dword [eax + 0x1c], ecx
mov ecx, dword [ebp - 0x2c]
add ecx, ebx
mov dword [eax + 0x20], ecx
mov ecx, dword [ebp - 0x30]
add ecx, edx
mov dword [eax + 0x24], ecx
mov dword [eax + 0x168], 0
add esp, 0x28
pop esi
pop edi
pop ebx
pop ebp
ret