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

Disassembly:
sub esp, 0x10
push ebx
push ebp
push esi
push edi
mov edi, eax
cdq
and edx, 0xf
add eax, edx
sar eax, 4
mov dword [esp + 0x1c], eax
mov edx, dword [esp + 0x1c]
shl eax, 4
add eax, dword [esp + 0x24]
neg edx
mov esi, ecx
mov ebx, ecx
mov ebp, ecx
mov dword [esp + 0x24], eax
mov dword [esp + 0x1c], edx
je 0x44a290
add edx, edx
lea edx, [eax + edx*8 + 8]
mov eax, dword [esp + 0x1c]
neg eax
mov dword [esp + 0x18], eax
jmp 0x44a200
mov eax, dword [edx - 8]
imul eax, eax, 0x239b961b
rol eax, 0xf
imul eax, eax, 0xab0e9789
xor eax, ecx
ror eax, 0xd
add eax, esi
lea ecx, [eax + eax*4 + 0x561ccd1b]
mov eax, dword [edx - 4]
imul eax, eax, 0xab0e9789
rol eax, 0x10
imul eax, eax, 0x38b34ae5
xor eax, esi
ror eax, 0xf
add eax, ebx
lea esi, [eax + eax*4 + 0xbcaa747]
mov eax, dword [edx]
imul eax, eax, 0x38b34ae5
ror eax, 0xf
imul eax, eax, 0xa1e38b93
xor eax, ebx
rol eax, 0xf
add eax, ebp
lea ebx, [eax + eax*4 - 0x6932e3cb]
mov eax, dword [edx + 4]
imul eax, eax, 0xa1e38b93
ror eax, 0xe
imul eax, eax, 0x239b961b
xor eax, ebp
rol eax, 0xd
add eax, ecx
add edx, 0x10
dec dword [esp + 0x18]
lea ebp, [eax + eax*4 + 0x32ac3b17]
jne 0x44a200
mov eax, dword [esp + 0x24]
mov edx, edi
and edx, 0xf
dec edx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x1c], 0
cmp edx, 0xe
ja case.default.0x44a2bf
jmp dword [edx*4 + 0x44a524]
movzx edx, byte [eax + 0xe]
movzx eax, byte [eax + 0xd]
shl eax, 8
shl edx, 0x10
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a2f3
movzx eax, byte [eax + 0xd]
mov edx, dword [esp + 0x1c]
shl eax, 8
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a2f3
mov edx, dword [esp + 0x1c]
movzx eax, byte [eax + 0xc]
xor eax, edx
imul eax, eax, 0xa1e38b93
ror eax, 0xe
imul eax, eax, 0x239b961b
xor ebp, eax
mov eax, dword [esp + 0x24]
movzx edx, byte [eax + 0xb]
movzx eax, byte [eax + 0xa]
shl eax, 0x10
shl edx, 0x18
xor edx, eax
mov eax, dword [esp + 0x24]
movzx eax, byte [eax + 9]
shl eax, 8
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a368
movzx eax, byte [eax + 0xa]
mov edx, dword [esp + 0x10]
shl eax, 0x10
xor edx, eax
mov eax, dword [esp + 0x24]
movzx eax, byte [eax + 9]
shl eax, 8
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a368
movzx eax, byte [eax + 9]
mov edx, dword [esp + 0x10]
shl eax, 8
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a368
mov edx, dword [esp + 0x10]
movzx eax, byte [eax + 8]
xor eax, edx
imul eax, eax, 0x38b34ae5
ror eax, 0xf
imul eax, eax, 0xa1e38b93
xor ebx, eax
mov eax, dword [esp + 0x24]
movzx edx, byte [eax + 7]
movzx eax, byte [eax + 6]
shl eax, 0x10
shl edx, 0x18
xor edx, eax
mov eax, dword [esp + 0x24]
movzx eax, byte [eax + 5]
shl eax, 8
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a3dd
movzx eax, byte [eax + 6]
mov edx, dword [esp + 0x14]
shl eax, 0x10
xor edx, eax
mov eax, dword [esp + 0x24]
movzx eax, byte [eax + 5]
shl eax, 8
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a3dd
movzx eax, byte [eax + 5]
mov edx, dword [esp + 0x14]
shl eax, 8
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a3dd
mov edx, dword [esp + 0x14]
movzx eax, byte [eax + 4]
xor eax, edx
imul eax, eax, 0xab0e9789
rol eax, 0x10
imul eax, eax, 0x38b34ae5
xor esi, eax
mov eax, dword [esp + 0x24]
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 2]
shl eax, 0x10
shl edx, 0x18
xor edx, eax
mov eax, dword [esp + 0x24]
movzx eax, byte [eax + 1]
shl eax, 8
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a452
movzx eax, byte [eax + 2]
mov edx, dword [esp + 0x18]
shl eax, 0x10
xor edx, eax
mov eax, dword [esp + 0x24]
movzx eax, byte [eax + 1]
shl eax, 8
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a452
movzx eax, byte [eax + 1]
mov edx, dword [esp + 0x18]
shl eax, 8
xor edx, eax
mov eax, dword [esp + 0x24]
jmp 0x44a452
mov edx, dword [esp + 0x18]
movzx eax, byte [eax]
xor eax, edx
imul eax, eax, 0x239b961b
rol eax, 0xf
imul eax, eax, 0xab0e9789
xor ecx, eax
xor esi, edi
xor ecx, edi
xor ebx, edi
xor ebp, edi
add ecx, ebp
add ecx, ebx
add ecx, esi
mov eax, ecx
shr eax, 0x10
xor eax, ecx
imul eax, eax, 0x85ebca6b
mov edx, eax
add esi, ecx
shr edx, 0xd
xor edx, eax
mov eax, esi
imul edx, edx, 0xc2b2ae35
shr eax, 0x10
xor eax, esi
imul eax, eax, 0x85ebca6b
mov esi, eax
add ebx, ecx
shr esi, 0xd
xor esi, eax
imul esi, esi, 0xc2b2ae35
mov eax, ebx
shr eax, 0x10
xor eax, ebx
imul eax, eax, 0x85ebca6b
mov edi, esi
shr edi, 0x10
xor edi, esi
mov esi, eax
add ecx, ebp
shr esi, 0xd
xor esi, eax
mov eax, ecx
imul esi, esi, 0xc2b2ae35
shr eax, 0x10
xor eax, ecx
imul eax, eax, 0x85ebca6b
mov ecx, eax
shr ecx, 0xd
xor ecx, eax
imul ecx, ecx, 0xc2b2ae35
mov ebx, esi
shr ebx, 0x10
xor ebx, esi
mov esi, ecx
shr esi, 0x10
mov eax, edx
shr eax, 0x10
xor esi, ecx
mov ecx, dword [esp + 0x28]
xor eax, edx
add eax, esi
add eax, ebx
add eax, edi
add edi, eax
add ebx, eax
mov dword [ecx + 4], edi
pop edi
mov dword [ecx], eax
add eax, esi
pop esi
pop ebp
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], eax
pop ebx
add esp, 0x10
ret