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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x48
mov eax, dword [esp + 0x64]
test eax, eax
je 0x5d1919
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x5c]
mov edi, dword [edx + 0xc]
mov ebp, dword [edx + 8]
mov esi, dword [edx]
mov ebx, dword [edx + 4]
nop word cs:[eax + eax]
mov dword [esp], ecx
mov dword [esp + 0x44], eax
mov eax, dword [ecx]
mov dword [esp + 0x24], eax
mov edx, edi
mov ecx, dword [ecx + 4]
mov dword [esp + 4], ecx
xor edx, ebp
and edx, ebx
xor edx, edi
add edx, esi
add edx, eax
mov ecx, ebp
rol edx, 3
xor ecx, ebx
and ecx, edx
add edi, dword [esp + 4]
xor ecx, ebp
add edi, ecx
mov ecx, edx
rol edi, 7
xor ecx, ebx
and ecx, edi
xor ecx, ebx
mov eax, dword [esp]
mov eax, dword [eax + 8]
mov dword [esp + 0x14], eax
add ebp, eax
add ebp, ecx
rol ebp, 0xb
mov ecx, edi
xor ecx, edx
and ecx, ebp
xor ecx, edx
mov eax, dword [esp]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x38], eax
add ebx, eax
add ebx, ecx
mov ecx, ebp
xor ecx, edi
rol ebx, 0x13
and ecx, ebx
mov eax, dword [esp]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x18], eax
add edx, eax
xor ecx, edi
add edx, ecx
rol edx, 3
mov ecx, ebx
xor ecx, ebp
and ecx, edx
xor ecx, ebp
mov eax, dword [esp]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x30], eax
add edi, eax
add edi, ecx
rol edi, 7
mov ecx, edx
xor ecx, ebx
and ecx, edi
xor ecx, ebx
mov eax, dword [esp]
mov eax, dword [eax + 0x18]
mov dword [esp + 0x2c], eax
add ebp, eax
add ebp, ecx
mov ecx, edi
xor ecx, edx
rol ebp, 0xb
and ecx, ebp
mov eax, dword [esp]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x34], eax
add ebx, eax
xor ecx, edx
add ebx, ecx
rol ebx, 0x13
mov ecx, ebp
xor ecx, edi
and ecx, ebx
xor ecx, edi
mov eax, dword [esp]
mov eax, dword [eax + 0x20]
mov dword [esp + 0x10], eax
add edx, eax
add edx, ecx
rol edx, 3
mov ecx, ebx
xor ecx, ebp
and ecx, edx
xor ecx, ebp
mov eax, dword [esp]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x20], eax
add edi, eax
add edi, ecx
mov ecx, edx
xor ecx, ebx
rol edi, 7
and ecx, edi
mov eax, dword [esp]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x40], eax
add ebp, eax
xor ecx, ebx
add ebp, ecx
rol ebp, 0xb
mov ecx, edi
xor ecx, edx
and ecx, ebp
xor ecx, edx
mov eax, dword [esp]
mov eax, dword [eax + 0x2c]
mov dword [esp + 0x28], eax
add ebx, eax
add ebx, ecx
rol ebx, 0x13
mov ecx, ebp
xor ecx, edi
and ecx, ebx
xor ecx, edi
mov eax, dword [esp]
mov esi, dword [eax + 0x30]
add edx, esi
mov dword [esp + 0x3c], esi
add edx, ecx
mov ecx, ebx
xor ecx, ebp
rol edx, 3
and ecx, edx
mov eax, dword [esp]
mov eax, dword [eax + 0x34]
mov dword [esp + 8], eax
add edi, eax
xor ecx, ebp
add edi, ecx
rol edi, 7
mov ecx, edx
xor ecx, ebx
and ecx, edi
xor ecx, ebx
mov eax, dword [esp]
mov eax, dword [eax + 0x38]
mov dword [esp + 0xc], eax
add ebp, eax
add ebp, ecx
rol ebp, 0xb
mov ecx, edi
xor ecx, edx
and ecx, ebp
xor ecx, edx
mov eax, dword [esp]
mov eax, dword [eax + 0x3c]
mov dword [esp + 0x1c], eax
add ebx, eax
add ebx, ecx
rol ebx, 0x13
mov ecx, ebp
or ecx, edi
and ecx, ebx
mov eax, ebp
and eax, edi
or eax, ecx
add edx, dword [esp + 0x24]
add eax, edx
add eax, 0x5a827999
rol eax, 3
mov ecx, ebx
or ecx, ebp
mov edx, ebx
and edx, ebp
and ecx, eax
or ecx, edx
add edi, dword [esp + 0x18]
add edi, ecx
add edi, 0x5a827999
mov ecx, eax
and ecx, ebx
rol edi, 5
mov edx, eax
or edx, ebx
and edx, edi
or edx, ecx
add ebp, dword [esp + 0x10]
add ebp, edx
add ebp, 0x5a827999
rol ebp, 9
mov ecx, edi
or ecx, eax
mov edx, edi
and edx, eax
and ecx, ebp
or ecx, edx
add ebx, esi
add ebx, ecx
add ebx, 0x5a827999
mov ecx, ebp
and ecx, edi
rol ebx, 0xd
mov edx, ebp
or edx, edi
and edx, ebx
or edx, ecx
add eax, dword [esp + 4]
add eax, edx
add eax, 0x5a827999
rol eax, 3
mov ecx, ebx
or ecx, ebp
mov edx, ebx
and edx, ebp
and ecx, eax
or ecx, edx
add edi, dword [esp + 0x30]
add edi, ecx
add edi, 0x5a827999
mov ecx, eax
and ecx, ebx
rol edi, 5
mov edx, eax
or edx, ebx
and edx, edi
or edx, ecx
add ebp, dword [esp + 0x20]
add ebp, edx
add ebp, 0x5a827999
rol ebp, 9
mov ecx, edi
or ecx, eax
mov edx, edi
and edx, eax
and ecx, ebp
or ecx, edx
add ebx, dword [esp + 8]
add ebx, ecx
add ebx, 0x5a827999
mov ecx, ebp
and ecx, edi
rol ebx, 0xd
mov edx, ebp
or edx, edi
and edx, ebx
or edx, ecx
add eax, dword [esp + 0x14]
add eax, edx
add eax, 0x5a827999
rol eax, 3
mov ecx, ebx
or ecx, ebp
mov edx, ebx
and edx, ebp
and ecx, eax
or ecx, edx
add edi, dword [esp + 0x2c]
add edi, ecx
add edi, 0x5a827999
mov ecx, eax
and ecx, ebx
rol edi, 5
mov edx, eax
or edx, ebx
and edx, edi
or edx, ecx
mov esi, dword [esp + 0x40]
add ebp, esi
add ebp, edx
add ebp, 0x5a827999
rol ebp, 9
mov ecx, edi
or ecx, eax
mov edx, edi
and edx, eax
and ecx, ebp
or ecx, edx
add ebx, dword [esp + 0xc]
add ebx, ecx
add ebx, 0x5a827999
mov ecx, ebp
and ecx, edi
rol ebx, 0xd
mov edx, ebp
or edx, edi
and edx, ebx
or edx, ecx
add eax, dword [esp + 0x38]
add eax, edx
add eax, 0x5a827999
rol eax, 3
mov ecx, ebx
or ecx, ebp
mov edx, ebx
and edx, ebp
and ecx, eax
or ecx, edx
add edi, dword [esp + 0x34]
add edi, ecx
add edi, 0x5a827999
mov ecx, eax
and ecx, ebx
rol edi, 5
mov edx, eax
or edx, ebx
and edx, edi
or edx, ecx
add ebp, dword [esp + 0x28]
add ebp, edx
add ebp, 0x5a827999
rol ebp, 9
mov ecx, edi
or ecx, eax
mov edx, edi
and edx, eax
and ecx, ebp
or ecx, edx
add ebx, dword [esp + 0x1c]
add ecx, ebx
add ecx, 0x5a827999
add eax, dword [esp + 0x24]
rol ecx, 0xd
mov edx, ecx
xor edx, ebp
mov ebx, edx
xor ebx, edi
add ebx, eax
add ebx, 0x6ed9eba1
add edi, dword [esp + 0x10]
rol ebx, 3
xor edx, ebx
lea eax, [edx + edi]
add eax, 0x6ed9eba1
add ebp, dword [esp + 0x18]
rol eax, 9
mov edx, ebx
xor edx, ecx
xor edx, eax
lea edi, [edx + ebp]
add edi, 0x6ed9eba1
add ecx, dword [esp + 0x3c]
rol edi, 0xb
mov edx, eax
xor edx, ebx
xor edx, edi
add edx, ecx
add edx, 0x6ed9eba1
add ebx, dword [esp + 0x14]
rol edx, 0xf
mov ecx, edi
xor ecx, eax
xor ecx, edx
add ebx, ecx
add ebx, 0x6ed9eba1
rol ebx, 3
add eax, esi
mov ecx, edx
xor ecx, edi
xor ecx, ebx
add eax, ecx
add eax, 0x6ed9eba1
add edi, dword [esp + 0x2c]
rol eax, 9
mov ecx, ebx
xor ecx, edx
xor ecx, eax
add edi, ecx
add edi, 0x6ed9eba1
add edx, dword [esp + 0xc]
rol edi, 0xb
mov ecx, eax
xor ecx, ebx
xor ecx, edi
add edx, ecx
add edx, 0x6ed9eba1
add ebx, dword [esp + 4]
rol edx, 0xf
mov ecx, edi
xor ecx, eax
xor ecx, edx
lea esi, [ecx + ebx]
add esi, 0x6ed9eba1
rol esi, 3
add eax, dword [esp + 0x20]
mov ecx, edx
xor ecx, edi
xor ecx, esi
add eax, ecx
add eax, 0x6ed9eba1
add edi, dword [esp + 0x30]
rol eax, 9
mov ecx, esi
xor ecx, edx
xor ecx, eax
lea ebx, [ecx + edi]
add ebx, 0x6ed9eba1
add edx, dword [esp + 8]
rol ebx, 0xb
mov ecx, eax
xor ecx, esi
xor ecx, ebx
add ecx, edx
add ecx, 0x6ed9eba1
add esi, dword [esp + 0x38]
rol ecx, 0xf
mov edx, ebx
xor edx, eax
xor edx, ecx
add esi, edx
add esi, 0x6ed9eba1
rol esi, 3
add eax, dword [esp + 0x28]
mov edx, ecx
xor edx, ebx
xor edx, esi
lea edi, [edx + eax]
add edi, 0x6ed9eba1
rol edi, 9
add ebx, dword [esp + 0x34]
mov eax, esi
xor eax, ecx
xor eax, edi
lea ebp, [eax + ebx]
add ebp, 0x6ed9eba1
add ecx, dword [esp + 0x1c]
rol ebp, 0xb
mov eax, edi
xor eax, esi
xor eax, ebp
lea ebx, [eax + ecx]
add ebx, 0x6ed9eba1
mov ecx, dword [esp]
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x5c]
add esi, dword [edx]
rol ebx, 0xf
add ebp, dword [edx + 8]
add ebx, dword [edx + 4]
add edi, dword [edx + 0xc]
add ecx, 0x40
mov dword [edx], esi
mov dword [edx + 4], ebx
mov dword [edx + 8], ebp
mov dword [edx + 0xc], edi
dec eax
jne 0x5d1460
add esp, 0x48
pop esi
pop edi
pop ebx
pop ebp
ret