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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
push edi
mov esi, edx
mov edi, ecx
mov dword [ebp - 0x10], edi
lfence
cmp esi, 0x18
ja 0x43b576
cmp esi, 0xc
ja 0x43b495
cmp esi, 4
ja 0x43b3fb
xor edi, edi
xor edx, edx
lea ebx, [edi + 9]
test esi, esi
je 0x43b398
nop dword [eax]
mov eax, dword [ebp - 0x10]
movsx ecx, byte [edx + eax]
inc edx
imul eax, edi, 0x3361d2af
sub ecx, eax
mov edi, ecx
xor ebx, edi
cmp edx, esi
jb 0x43b380
imul eax, esi, 0xcc9e2d51
rol eax, 0xf
imul eax, eax, 0x1b873593
xor eax, ebx
rol eax, 0xd
add eax, 0xfaddaf14
lea ecx, [eax + eax*4]
imul eax, edi, 0xcc9e2d51
pop edi
pop esi
pop ebx
rol eax, 0xf
imul eax, eax, 0x1b873593
xor ecx, eax
rol ecx, 0xd
lea ecx, [ecx + ecx*4]
add ecx, 0xe6546b64
mov eax, ecx
shr eax, 0x10
xor eax, ecx
imul ecx, eax, 0x85ebca6b
mov eax, ecx
shr eax, 0xd
xor eax, ecx
imul eax, eax, 0xc2b2ae35
mov edx, eax
shr edx, 0x10
xor edx, eax
mov eax, edx
mov esp, ebp
pop ebp
ret
mov eax, dword [edi]
lea edx, [esi + esi*4]
add eax, esi
imul eax, eax, 0xcc9e2d51
rol eax, 0xf
imul eax, eax, 0x1b873593
xor eax, edx
rol eax, 0xd
add eax, 0xfaddaf14
lea ecx, [eax + eax*4]
mov eax, dword [edi + esi - 4]
add eax, edx
shr esi, 1
imul eax, eax, 0xcc9e2d51
and esi, 4
rol eax, 0xf
imul eax, eax, 0x1b873593
xor ecx, eax
imul eax, dword [esi + edi], 0x3361d2af
rol ecx, 0xd
add ecx, 0xfaddaf14
pop edi
pop esi
pop ebx
lea edx, [ecx + ecx*4]
mov ecx, 0x318f97d9
sub ecx, eax
rol ecx, 0xf
imul eax, ecx, 0x1b873593
xor edx, eax
rol edx, 0xd
add edx, 0xfaddaf14
lea ecx, [edx + edx*4]
mov eax, ecx
shr eax, 0x10
xor eax, ecx
imul ecx, eax, 0x85ebca6b
mov eax, ecx
shr eax, 0xd
xor eax, ecx
imul eax, eax, 0xc2b2ae35
mov edx, eax
shr edx, 0x10
xor edx, eax
mov eax, edx
mov esp, ebp
pop ebp
ret
shr edx, 1
imul eax, dword [edx + edi - 4], 0xcc9e2d51
rol eax, 0xf
imul eax, eax, 0x1b873593
xor eax, esi
rol eax, 0xd
add eax, 0xfaddaf14
lea ecx, [eax + eax*4]
imul eax, dword [edi + 4], 0xcc9e2d51
rol eax, 0xf
imul eax, eax, 0x1b873593
xor ecx, eax
imul eax, dword [edi + esi - 8], 0xcc9e2d51
rol ecx, 0xd
rol eax, 0xf
lea ecx, [ecx + ecx*4]
imul eax, eax, 0x1b873593
add ecx, 0xe6546b64
xor ecx, eax
imul eax, dword [edx + edi], 0xcc9e2d51
rol ecx, 0xd
rol eax, 0xf
lea ecx, [ecx + ecx*4]
imul eax, eax, 0x1b873593
add ecx, 0xe6546b64
xor ecx, eax
imul eax, dword [edi], 0xcc9e2d51
rol ecx, 0xd
rol eax, 0xf
lea ecx, [ecx + ecx*4]
imul eax, eax, 0x1b873593
add ecx, 0xe6546b64
xor ecx, eax
imul eax, dword [edi + esi - 4], 0xcc9e2d51
rol ecx, 0xd
pop edi
pop esi
pop ebx
rol eax, 0xf
lea ecx, [ecx + ecx*4]
imul eax, eax, 0x1b873593
add ecx, 0xe6546b64
xor ecx, eax
rol ecx, 0xd
lea ecx, [ecx + ecx*4]
add ecx, 0xe6546b64
mov eax, ecx
shr eax, 0x10
xor eax, ecx
imul ecx, eax, 0x85ebca6b
mov eax, ecx
shr eax, 0xd
xor eax, ecx
imul ecx, eax, 0xc2b2ae35
mov edx, ecx
shr edx, 0x10
xor edx, ecx
mov eax, edx
mov esp, ebp
pop ebp
ret
imul eax, dword [edi + esi - 4], 0xcc9e2d51
imul edx, esi, 0xcc9e2d51
rol eax, 0xf
imul eax, eax, 0x1b873593
xor eax, esi
rol eax, 0xd
add eax, 0xfaddaf14
lea ecx, [eax + eax*4]
imul eax, dword [edi + esi - 0x10], 0xcc9e2d51
rol eax, 0xf
imul eax, eax, 0x1b873593
xor ecx, eax
imul eax, dword [edi + esi - 8], 0xcc9e2d51
rol ecx, 0xd
add ecx, 0xfaddaf14
rol eax, 0xf
imul eax, eax, 0x1b873593
lea ebx, [ecx + ecx*4]
xor eax, edx
rol eax, 0xd
add eax, 0xfaddaf14
lea ecx, [eax + eax*4]
imul eax, dword [edi + esi - 0xc], 0xcc9e2d51
rol eax, 0xf
imul eax, eax, 0x1b873593
xor ecx, eax
rol ecx, 0xd
add ecx, 0xfaddaf14
lea eax, [ecx + ecx*4]
mov dword [ebp - 0xc], eax
lea ecx, [esi - 1]
imul eax, dword [edi + esi - 0x14], 0xcc9e2d51
rol eax, 0xf
imul eax, eax, 0x1b873593
add eax, edx
rol eax, 0xd
lea eax, [eax + eax*4]
add eax, 0xe6546b64
mov dword [ebp - 8], eax
mov eax, 0xcccccccd
mul ecx
lea ecx, [edi + 0x10]
shr edx, 4
mov dword [ebp - 0x10], edx
mov dword [ebp - 4], ecx
imul eax, dword [ecx - 0x10], 0xcc9e2d51
mov edx, dword [ecx - 0xc]
mov edi, dword [ecx]
rol eax, 0xf
imul esi, eax, 0x1b873593
imul eax, dword [ecx - 4], 0xcc9e2d51
rol eax, 0xf
imul ecx, eax, 0x1b873593
mov eax, esi
xor eax, ebx
mov ebx, esi
rol eax, 0xe
add ecx, edx
lea eax, [eax + eax*4]
add eax, 0xe6546b64
xor ecx, eax
mov eax, dword [ebp - 8]
add eax, edx
rol ecx, 0xd
rol eax, 0xd
add ecx, edi
imul eax, eax, 0x3361d2af
lea ecx, [ecx + ecx*4]
add ecx, 0xe6546b64
sub ebx, eax
mov eax, dword [ebp - 4]
imul eax, dword [eax - 8], 0xcc9e2d51
rol eax, 0xf
imul eax, eax, 0x1b873593
add eax, dword [ebp - 0xc]
rol eax, 0xe
lea eax, [eax + eax*4]
add eax, 0xe6546b64
xor eax, edi
bswap eax
lea edx, [eax + eax*4]
mov eax, ecx
mov ecx, dword [ebp - 4]
add ecx, 0x14
mov dword [ebp - 8], edx
sub dword [ebp - 0x10], 1
bswap eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 4], ecx
jne 0x43b630
ror eax, 0xb
imul eax, eax, 0xcc9e2d51
ror edx, 0xb
pop edi
pop esi
rol eax, 0xf
imul eax, eax, 0x3361d2af
sub ebx, eax
imul eax, edx, 0xcc9e2d51
rol ebx, 0xd
rol eax, 0xf
lea ecx, [ebx - 0x52250ec]
lea ecx, [ecx + ecx*4]
rol ecx, 0xf
add ecx, eax
imul eax, ecx, 0xcc9e2d51
pop ebx
rol eax, 0xd
lea eax, [eax + eax*4]
add eax, 0xe6546b64
rol eax, 0xf
imul eax, eax, 0xcc9e2d51
mov esp, ebp
pop ebp
ret