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

Disassembly:
mov eax, 8
call fcn.100a1060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
test ecx, ecx
mov edx, dword [eax]
push ebx
mov ebx, dword [eax + 4]
push ebp
mov ebp, dword [eax + 8]
push esi
mov esi, dword [eax + 0xc]
je 0x10004e54
mov eax, dword [esp + 0x1c]
add eax, 0x10
mov dword [esp + 0xc], ecx
push edi
mov edi, dword [eax - 0x10]
mov ecx, esi
xor ecx, ebp
and ecx, ebx
xor ecx, esi
add ecx, edi
add ecx, edx
mov edi, dword [eax - 0xc]
rol ecx, 3
mov edx, ebp
xor edx, ebx
and edx, ecx
xor edx, ebp
add edx, edi
add edx, esi
mov edi, dword [eax - 8]
rol edx, 7
mov esi, ebx
xor esi, ecx
and esi, edx
xor esi, ebx
add esi, edi
add esi, ebp
mov ebp, dword [eax - 4]
rol esi, 0xb
mov edi, edx
xor edi, ecx
and edi, esi
xor edi, ecx
add edi, ebp
mov ebp, dword [eax]
add edi, ebx
rol edi, 0x13
mov ebx, edx
xor ebx, esi
and ebx, edi
xor ebx, edx
add ebx, ebp
mov ebp, dword [eax + 4]
add ebx, ecx
rol ebx, 3
mov ecx, esi
xor ecx, edi
and ecx, ebx
xor ecx, esi
add ecx, ebp
mov ebp, dword [eax + 8]
add ecx, edx
mov edx, edi
xor edx, ebx
rol ecx, 7
and edx, ecx
xor edx, edi
add edx, ebp
mov ebp, dword [eax + 0xc]
add edx, esi
rol edx, 0xb
mov esi, ecx
xor esi, ebx
and esi, edx
xor esi, ebx
add esi, ebp
mov ebp, dword [eax + 0x10]
add esi, edi
rol esi, 0x13
mov edi, ecx
xor edi, edx
and edi, esi
xor edi, ecx
add edi, ebp
mov ebp, dword [eax + 0x14]
add edi, ebx
mov ebx, edx
xor ebx, esi
rol edi, 3
and ebx, edi
xor ebx, edx
add ebx, ebp
mov ebp, dword [eax + 0x18]
add ebx, ecx
rol ebx, 7
mov ecx, esi
xor ecx, edi
and ecx, ebx
xor ecx, esi
add ecx, ebp
add ecx, edx
mov ebp, dword [eax + 0x1c]
rol ecx, 0xb
mov edx, ebx
xor edx, edi
and edx, ecx
xor edx, edi
add edx, ebp
add edx, esi
mov ebp, dword [eax + 0x20]
rol edx, 0x13
mov esi, ebx
xor esi, ecx
and esi, edx
xor esi, ebx
add esi, ebp
add esi, edi
mov edi, dword [eax + 0x24]
rol esi, 3
mov ebp, ecx
xor ebp, edx
and ebp, esi
xor ebp, ecx
add ebp, edi
add ebp, ebx
mov ebx, dword [eax + 0x28]
mov edi, edx
xor edi, esi
rol ebp, 7
and edi, ebp
xor edi, edx
add edi, ebx
mov ebx, dword [eax + 0x2c]
add edi, ecx
rol edi, 0xb
mov ecx, ebp
xor ecx, esi
and ecx, edi
xor ecx, esi
add ecx, ebx
add ecx, edx
rol ecx, 0x13
mov edx, edi
or edx, ecx
and edx, ebp
mov ebx, edi
and ebx, ecx
or edx, ebx
add edx, dword [eax - 0x10]
lea esi, [edx + esi + 0x5a827999]
rol esi, 3
mov edx, ecx
or edx, esi
mov dword [esp + 0x14], edx
and edx, edi
mov ebx, ecx
and ebx, esi
or edx, ebx
mov dword [esp + 0x24], ebx
add edx, dword [eax]
mov ebx, dword [esp + 0x24]
lea ebp, [edx + ebp + 0x5a827999]
mov edx, dword [esp + 0x14]
rol ebp, 5
and edx, ebp
or edx, ebx
add edx, dword [eax + 0x10]
lea edi, [edx + edi + 0x5a827999]
rol edi, 9
mov edx, edi
or edx, esi
mov dword [esp + 0x20], ebp
and edx, ebp
mov ebx, edi
and ebx, esi
or edx, ebx
add edx, dword [eax + 0x20]
lea ecx, [edx + ecx + 0x5a827999]
rol ecx, 0xd
mov edx, edi
or edx, ecx
and edx, ebp
mov ebx, edi
and ebx, ecx
or edx, ebx
add edx, dword [eax - 0xc]
lea esi, [edx + esi + 0x5a827999]
mov edx, ecx
rol esi, 3
or edx, esi
mov ebx, ecx
and ebx, esi
mov dword [esp + 0x24], ebx
mov ebp, edx
and ebp, edi
or ebp, ebx
add ebp, dword [eax + 4]
mov ebx, dword [esp + 0x20]
lea ebx, [ebx + ebp + 0x5a827999]
mov ebp, dword [esp + 0x24]
rol ebx, 5
and edx, ebx
or edx, ebp
add edx, dword [eax + 0x14]
lea edx, [edx + edi + 0x5a827999]
rol edx, 9
mov edi, edx
or edi, esi
and edi, ebx
mov ebp, edx
and ebp, esi
or edi, ebp
add edi, dword [eax + 0x24]
lea edi, [edi + ecx + 0x5a827999]
rol edi, 0xd
mov dword [esp + 0x20], ebx
mov ecx, edx
or ecx, edi
and ecx, ebx
mov ebx, edx
and ebx, edi
or ecx, ebx
add ecx, dword [eax - 8]
lea esi, [ecx + esi + 0x5a827999]
rol esi, 3
mov ecx, edi
or ecx, esi
mov ebp, ecx
and ebp, edx
mov ebx, edi
and ebx, esi
or ebp, ebx
mov dword [esp + 0x24], ebx
add ebp, dword [eax + 8]
mov ebx, dword [esp + 0x20]
lea ebx, [ebx + ebp + 0x5a827999]
mov ebp, dword [esp + 0x24]
rol ebx, 5
and ecx, ebx
or ecx, ebp
add ecx, dword [eax + 0x18]
lea ecx, [ecx + edx + 0x5a827999]
rol ecx, 9
mov edx, ecx
mov dword [esp + 0x20], ebx
or edx, esi
and edx, ebx
mov ebp, ecx
and ebp, esi
or edx, ebp
add edx, dword [eax + 0x28]
lea edi, [edx + edi + 0x5a827999]
rol edi, 0xd
mov edx, ecx
or edx, edi
and edx, ebx
mov ebx, ecx
and ebx, edi
or edx, ebx
add edx, dword [eax - 4]
lea esi, [edx + esi + 0x5a827999]
rol esi, 3
mov edx, edi
or edx, esi
mov ebp, edx
and ebp, ecx
mov ebx, edi
and ebx, esi
or ebp, ebx
mov dword [esp + 0x24], ebx
add ebp, dword [eax + 0xc]
mov ebx, dword [esp + 0x20]
lea ebx, [ebx + ebp + 0x5a827999]
mov ebp, dword [esp + 0x24]
rol ebx, 5
and edx, ebx
or edx, ebp
add edx, dword [eax + 0x1c]
lea ecx, [edx + ecx + 0x5a827999]
rol ecx, 9
mov edx, ecx
or edx, esi
and edx, ebx
mov ebp, ecx
and ebp, esi
or edx, ebp
add edx, dword [eax + 0x2c]
mov ebp, dword [eax - 0x10]
lea edi, [edx + edi + 0x5a827999]
rol edi, 0xd
mov edx, ebx
xor edx, ecx
xor edx, edi
add edx, ebp
mov ebp, dword [eax + 0x10]
lea esi, [edx + esi + 0x6ed9eba1]
rol esi, 3
mov edx, ecx
xor edx, edi
xor edx, esi
add edx, ebp
mov ebp, dword [eax]
lea ebx, [edx + ebx + 0x6ed9eba1]
rol ebx, 9
mov edx, ebx
xor edx, edi
xor edx, esi
add edx, ebp
lea ecx, [edx + ecx + 0x6ed9eba1]
rol ecx, 0xb
mov edx, ebx
xor edx, ecx
mov ebp, edx
xor ebp, esi
add ebp, dword [eax + 0x20]
lea edi, [edi + ebp + 0x6ed9eba1]
mov ebp, dword [eax - 8]
rol edi, 0xf
xor edx, edi
add edx, ebp
lea edx, [edx + esi + 0x6ed9eba1]
rol edx, 3
mov ebp, dword [eax + 0x18]
mov esi, ecx
xor esi, edi
xor esi, edx
add esi, ebp
mov ebp, dword [eax + 8]
lea ebx, [esi + ebx + 0x6ed9eba1]
rol ebx, 9
mov esi, ebx
xor esi, edi
xor esi, edx
add esi, ebp
lea ebp, [esi + ecx + 0x6ed9eba1]
rol ebp, 0xb
mov ecx, ebx
xor ecx, ebp
mov esi, ecx
xor esi, edx
add esi, dword [eax + 0x28]
lea esi, [esi + edi + 0x6ed9eba1]
mov edi, dword [eax - 0xc]
rol esi, 0xf
xor ecx, esi
add ecx, edi
mov edi, dword [eax + 0x14]
lea ecx, [ecx + edx + 0x6ed9eba1]
rol ecx, 3
mov edx, ebp
xor edx, esi
xor edx, ecx
add edx, edi
lea edi, [edx + ebx + 0x6ed9eba1]
mov ebx, dword [eax + 4]
rol edi, 9
mov edx, edi
xor edx, esi
xor edx, ecx
add edx, ebx
lea ebx, [edx + ebp + 0x6ed9eba1]
rol ebx, 0xb
mov edx, edi
xor edx, ebx
mov ebp, edx
xor ebp, ecx
add ebp, dword [eax + 0x24]
lea esi, [esi + ebp + 0x6ed9eba1]
mov ebp, dword [eax - 4]
rol esi, 0xf
xor edx, esi
add edx, ebp
mov ebp, dword [eax + 0x1c]
lea edx, [edx + ecx + 0x6ed9eba1]
rol edx, 3
mov ecx, ebx
xor ecx, esi
xor ecx, edx
add ecx, ebp
mov ebp, dword [eax + 0xc]
lea edi, [ecx + edi + 0x6ed9eba1]
rol edi, 9
mov ecx, edi
xor ecx, esi
xor ecx, edx
add ecx, ebp
lea ebp, [ecx + ebx + 0x6ed9eba1]
mov ebx, dword [eax + 0x2c]
rol ebp, 0xb
mov ecx, edi
xor ecx, ebp
xor ecx, edx
add ecx, ebx
lea esi, [ecx + esi + 0x6ed9eba1]
mov ecx, dword [esp + 0x1c]
mov ebx, dword [ecx]
add ebx, edx
mov dword [ecx], ebx
mov edx, ebx
mov ebx, dword [ecx + 4]
rol esi, 0xf
add ebx, esi
mov dword [ecx + 4], ebx
mov esi, dword [ecx + 8]
add esi, ebp
mov dword [ecx + 8], esi
mov ebp, esi
mov esi, dword [ecx + 0xc]
add esi, edi
mov dword [ecx + 0xc], esi
mov ecx, dword [esp + 0x10]
add eax, 0x40
dec ecx
mov dword [esp + 0x10], ecx
jne 0x10004a04
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret