Function at 0x421cd0
Capabilities:
Encode data using xor
Hash data using murmur3

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x134
push esi
push edi
mov edi, eax
mov esi, ecx
mov ecx, dword [ebp + 8]
test edi, edi
jle 0x422146
lea edx, [ebp - 0x12e]
sub edx, esi
lea eax, [esi + 2]
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x24], edi
push ebx
lea esp, [esp]
xor esi, esi
movzx edi, byte [eax - 2]
movzx ebx, byte [eax - 1]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax + 1]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax + 3]
mov dword [ebp + esi*4 - 0x134], edi
movzx edi, byte [eax + 2]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax + 4]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax + 5]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax + 7]
mov dword [eax + edx - 4], edi
movzx edi, byte [eax + 6]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax + 8]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax + 9]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax + 0xb]
mov dword [eax + edx], edi
movzx edi, byte [eax + 0xa]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax + 0xc]
shl edi, 8
or edi, ebx
movzx ebx, byte [eax + 0xd]
shl edi, 8
or edi, ebx
mov dword [eax + edx + 4], edi
add esi, 4
add eax, 0x10
cmp esi, 0x10
jl 0x421d02
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0xfc]
mov dword [ebp - 0x2c], 0xc
mov edi, edi
mov edx, dword [eax]
mov esi, dword [eax - 0x34]
mov edi, edx
rol edi, 0xf
mov ebx, edx
rol ebx, 0xd
xor edi, ebx
shr edx, 0xa
xor edi, edx
mov edx, esi
rol edx, 0xe
mov ebx, esi
ror ebx, 7
xor edx, ebx
shr esi, 3
xor edx, esi
add edi, edx
add edi, dword [eax - 0x38]
mov esi, dword [eax - 0x30]
mov edx, dword [eax - 0x14]
add edx, edi
mov edi, esi
rol edi, 0xe
mov ebx, esi
ror ebx, 7
xor edi, ebx
shr esi, 3
xor edi, esi
mov esi, dword [eax + 4]
mov ebx, esi
rol ebx, 0xf
rol esi, 0xd
xor ebx, esi
mov esi, dword [eax + 4]
shr esi, 0xa
xor ebx, esi
mov esi, dword [eax - 0x34]
add edi, ebx
add edi, dword [eax - 0x10]
mov ebx, edx
add esi, edi
mov edi, edx
rol edi, 0xf
rol ebx, 0xd
xor edi, ebx
mov dword [eax + 8], edx
shr edx, 0xa
xor edi, edx
mov edx, dword [eax - 0x2c]
mov ebx, edx
rol ebx, 0xe
ror edx, 7
xor ebx, edx
mov edx, dword [eax - 0x2c]
shr edx, 3
xor ebx, edx
mov edx, dword [eax - 0x28]
add edi, ebx
add edi, dword [eax - 0xc]
mov ebx, esi
add edi, dword [eax - 0x30]
mov dword [eax + 0xc], esi
mov dword [eax + 0x10], edi
mov edi, esi
rol edi, 0xf
rol ebx, 0xd
xor edi, ebx
shr esi, 0xa
xor edi, esi
mov esi, edx
rol esi, 0xe
mov ebx, edx
ror ebx, 7
xor esi, ebx
shr edx, 3
xor esi, edx
add edi, esi
add edi, dword [eax - 8]
add edi, dword [eax - 0x2c]
add eax, 0x10
mov dword [eax + 4], edi
sub dword [ebp - 0x2c], 1
jne 0x421db0
mov eax, dword [ecx + 0x8c]
mov edx, dword [ecx + 0x90]
mov edi, dword [ecx + 0x88]
mov ebx, dword [ecx + 0xa0]
mov dword [ebp - 0x1c], eax
mov eax, dword [ecx + 0x94]
mov dword [ebp - 0x18], edx
mov edx, dword [ecx + 0x98]
mov dword [ebp - 0x14], eax
mov eax, dword [ecx + 0x9c]
mov ecx, dword [ecx + 0xa4]
mov dword [ebp - 4], ecx
mov dword [ebp - 0x20], edi
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], ebx
xor ecx, ecx
nop
mov eax, edx
ror eax, 0xb
mov esi, edx
rol esi, 7
xor eax, esi
mov esi, edx
ror esi, 6
xor eax, esi
mov esi, edx
not esi
and esi, ebx
mov ebx, dword [ebp - 0xc]
and ebx, edx
xor esi, ebx
add eax, esi
add eax, dword [ecx + 0x453588]
mov esi, edi
add eax, dword [ebp + ecx - 0x134]
mov ebx, edi
add eax, dword [ebp - 4]
ror esi, 0xd
rol ebx, 0xa
xor esi, ebx
mov ebx, edi
ror ebx, 2
xor esi, ebx
mov ebx, dword [ebp - 0x1c]
xor ebx, edi
and ebx, dword [ebp - 0x18]
mov edi, dword [ebp - 0x1c]
and edi, dword [ebp - 0x20]
xor ebx, edi
mov edi, dword [ebp - 8]
add esi, ebx
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0xc], edx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 4], edi
lea edi, [edx + eax]
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x14], edx
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x18], edx
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
lea edx, [esi + eax]
mov eax, edi
ror eax, 0xb
mov esi, edi
rol esi, 7
xor eax, esi
mov dword [ebp - 8], ebx
mov esi, edi
ror esi, 6
xor eax, esi
mov esi, edi
not esi
and esi, ebx
mov ebx, dword [ebp - 0xc]
and ebx, edi
xor esi, ebx
add eax, esi
add eax, dword [ecx + 0x45358c]
mov esi, edx
add eax, dword [ebp + ecx - 0x130]
mov ebx, edx
add eax, dword [ebp - 4]
ror esi, 0xd
rol ebx, 0xa
xor esi, ebx
mov ebx, edx
ror ebx, 2
xor esi, ebx
mov ebx, dword [ebp - 0x1c]
xor ebx, edx
and ebx, dword [ebp - 0x18]
mov dword [ebp - 0x20], edx
mov edx, dword [ebp - 0x1c]
and edx, dword [ebp - 0x20]
xor ebx, edx
add esi, ebx
mov ebx, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
mov dword [ebp - 0xc], edi
mov edi, dword [ebp - 0x18]
mov dword [ebp - 4], edx
mov edx, dword [ebp - 0x14]
add edx, eax
mov dword [ebp - 0x14], edi
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x18], edi
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edi
lea edi, [esi + eax]
mov eax, edx
ror eax, 0xb
mov esi, edx
rol esi, 7
xor eax, esi
mov dword [ebp - 8], ebx
mov esi, edx
ror esi, 6
xor eax, esi
mov esi, edx
not esi
and esi, ebx
mov ebx, dword [ebp - 0xc]
and ebx, edx
xor esi, ebx
add eax, esi
add eax, dword [ecx + 0x453590]
mov esi, edi
add eax, dword [ebp + ecx - 0x12c]
mov ebx, edi
add eax, dword [ebp - 4]
ror esi, 0xd
rol ebx, 0xa
xor esi, ebx
mov ebx, edi
ror ebx, 2
xor esi, ebx
mov ebx, dword [ebp - 0x1c]
xor ebx, edi
and ebx, dword [ebp - 0x18]
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x1c]
and edi, dword [ebp - 0x20]
xor ebx, edi
mov edi, dword [ebp - 8]
add esi, ebx
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0xc], edx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 4], edi
lea edi, [edx + eax]
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x14], edx
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x18], edx
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edx
lea edx, [esi + eax]
mov eax, edi
ror eax, 0xb
mov esi, edi
rol esi, 7
xor eax, esi
mov esi, edi
ror esi, 6
xor eax, esi
mov esi, edi
not esi
and esi, ebx
mov dword [ebp - 8], ebx
mov ebx, dword [ebp - 0xc]
and ebx, edi
xor esi, ebx
add eax, esi
add eax, dword [ecx + 0x453594]
mov dword [ebp - 0x20], edx
add eax, dword [ebp + ecx - 0x128]
add eax, dword [ebp - 4]
mov esi, edx
mov ebx, edx
ror esi, 0xd
rol ebx, 0xa
xor esi, ebx
mov ebx, edx
ror ebx, 2
xor esi, ebx
mov ebx, dword [ebp - 0x1c]
xor ebx, edx
and ebx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
and edx, dword [ebp - 0x20]
add ecx, 0x10
xor ebx, edx
mov edx, dword [ebp - 8]
add esi, ebx
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0xc], edi
mov edi, dword [ebp - 0x18]
mov dword [ebp - 4], edx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x14], edi
mov edi, dword [ebp - 0x1c]
mov dword [ebp - 0x18], edi
mov edi, dword [ebp - 0x20]
mov dword [ebp - 0x1c], edi
add edx, eax
cmp ecx, 0x100
lea edi, [esi + eax]
mov dword [ebp - 8], ebx
mov dword [ebp - 0x20], edi
jl 0x421ed0
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 0x1c]
add dword [ecx + 0x8c], eax
mov eax, dword [ebp - 0x18]
add dword [ecx + 0x90], eax
add dword [ecx + 0x98], edx
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0xc]
add dword [ecx + 0x94], eax
add dword [ecx + 0x9c], edx
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x30]
add dword [ecx + 0xa4], eax
add dword [ecx + 0x88], edi
add dword [ecx + 0xa0], ebx
mov eax, dword [ebp - 0x34]
sub edx, 0x40
sub dword [ebp - 0x24], 1
mov dword [ebp - 0x30], edx
jne 0x421d00
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret