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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x14c
mov eax, dword [0xb44908]
xor eax, esp
mov dword [esp + 0x148], eax
mov eax, dword [ecx + 0xc]
mov dword [esp], eax
mov edx, dword [ecx + 0x10]
mov dword [esp + 4], edx
mov edx, dword [ecx + 0x14]
mov dword [esp + 8], edx
mov edx, dword [ecx + 0x18]
mov dword [esp + 0xc], edx
mov edx, dword [ecx + 0x1c]
mov dword [esp + 0x10], edx
mov edx, dword [ecx + 0x20]
mov dword [esp + 0x18], edx
movups xmm0, xmmword [ecx + 0x5c]
mov edx, dword [ecx + 0x24]
mov dword [esp + 0x14], edx
mov ebp, dword [ecx + 0x28]
movups xmmword [esp + 0x78], xmm0
movups xmm0, xmmword [ecx + 0x4c]
movups xmmword [esp + 0x68], xmm0
movups xmm0, xmmword [ecx + 0x2c]
mov dword [esp + 0x44], ecx
movups xmm1, xmmword [ecx + 0x3c]
movups xmmword [esp + 0x58], xmm1
movups xmmword [esp + 0x48], xmm0
mov eax, dword [0xb533d8]
mov ecx, 0x10
nop dword [eax]
mov edx, dword [esp + ecx*4 + 0x40]
mov esi, edx
rol esi, 0xf
mov edi, edx
rol edi, 0xd
xor edi, esi
shr edx, 0xa
xor edx, edi
add edx, dword [esp + ecx*4 + 0x2c]
mov esi, dword [esp + ecx*4 + 0xc]
mov edi, esi
rol edi, 0x19
mov ebx, esi
rol ebx, 0xe
xor ebx, edi
shr esi, 3
xor esi, ebx
add edx, dword [esp + ecx*4 + 8]
add edx, esi
mov dword [esp + ecx*4 + 0x48], edx
inc ecx
cmp ecx, 0x40
jne 0x66fa50
mov edx, eax
add edx, dword [esp]
mov dword [esp], 0
mov dword [esp + 0x40], ebp
mov dword [esp + 0x20], ebp
mov eax, dword [esp + 0x14]
mov dword [esp + 0x1c], eax
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 8]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 4]
mov dword [esp + 0x24], eax
mov dword [esp + 0x3c], edx
nop
mov edi, esi
mov dword [esp + 0x38], esi
mov ecx, esi
rol ecx, 0x1a
rol esi, 0x15
mov eax, edi
rol eax, 7
xor esi, ecx
xor eax, esi
mov dword [esp + 0x34], ebp
mov ecx, edi
and ecx, ebp
add ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x30], esi
mov ebp, edi
not ebp
and ebp, esi
add ebp, ecx
add ebp, eax
mov ecx, edx
mov eax, edx
rol eax, 0x1e
rol edx, 0x13
xor edx, eax
mov esi, ecx
rol esi, 0xa
xor esi, edx
mov edi, dword [esp + 0x24]
mov ebx, dword [esp + 0x28]
mov eax, edi
or eax, ebx
and eax, ecx
mov edx, edi
and edx, ebx
or edx, eax
mov eax, dword [esp]
add ebp, dword [eax + 0xab0970]
add ebp, dword [esp + eax + 0x48]
add edx, esi
mov esi, dword [esp + 0x2c]
add esi, ebp
add edx, ebp
add eax, 4
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x20], ebp
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x1c], ebp
mov ebp, dword [esp + 0x38]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ecx
mov dword [esp], eax
cmp eax, 0x100
jne 0x66fad0
add edx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x44]
mov dword [ebp + 0xc], edx
add ecx, dword [esp + 4]
mov dword [ebp + 0x10], ecx
add edi, dword [esp + 8]
mov dword [ebp + 0x14], edi
add ebx, dword [esp + 0xc]
mov dword [ebp + 0x18], ebx
add esi, dword [esp + 0x10]
mov dword [ebp + 0x1c], esi
mov eax, dword [esp + 0x38]
add eax, dword [esp + 0x18]
mov dword [ebp + 0x20], eax
mov eax, dword [esp + 0x34]
add eax, dword [esp + 0x14]
mov dword [ebp + 0x24], eax
mov eax, dword [esp + 0x30]
add eax, dword [esp + 0x40]
mov dword [ebp + 0x28], eax
mov ecx, dword [esp + 0x148]
xor ecx, esp
call fcn.0076521b
add esp, 0x14c
pop esi
pop edi
pop ebx
pop ebp
ret