Function at 0x494ff9
Capabilities:
Encrypt data using chaskey
Hash data using murmur3

Disassembly:
mov esi, dword [esi]
sub edi, edx
sub ecx, edi
and ebx, edi
jmp 0x49494f
mov dword [esp + 0xd8], esi
ror edx, 0x14
bswap ebx
sub edi, ebx
xor ebx, edi
nop
jmp 0x495abc
mov esi, dword [esi]
add edx, ebx
mov ecx, 0x6fd372ec
and ecx, 0x6fd40e24
and edi, ebx
add ebx, edx
rol edx, 0x11
add edx, ecx
mov edi, 0x6fd6f624
neg edi
mov edi, ecx
and edx, edi
jmp 0x4960c9
mov esi, dword [esi]
shr ecx, 1
dec edi
sub edi, ebx
shr ebx, 0x10
xor ebx, edx
add ecx, edi
mov ecx, 0x6fe9099b
ror edi, 0x11
or ecx, ebx
jmp 0x497aad
mul esi
xor ebx, 0x703566b9
ror edi, 0x13
shr edi, 0xb
rol ebx, 2
shl ecx, 0x18
add ecx, 0x70370fe4
xchg edx, ecx
mov ecx, edx
jmp 0x496ec3
mov esi, dword [esi]
add ebx, 0x7063040c
xchg ebx, edx
inc ecx
rol edi, 0x12
xchg edx, ebx
dec ebx
or edi, 0x70667473
sub edx, ecx
jmp 0x497cba
mul esi
shr ecx, 0x15
neg edi
dec edx
xchg ebx, edi
xor ecx, edx
add edx, ecx
mov edi, edx
ror ecx, 0x13
neg edx
sub edi, ecx
jmp 0x495d88
sub esp, 0xe8
and edi, 0x7084325a
xchg edi, ebx
add edi, 0x70855a8a
add edx, edi
sub ecx, 0x70864764
and edi, ebx
add edi, ebx
jmp 0x4958c3
mov esi, dword [esi]
ror ebx, 5
add edi, 0x708e1827
and ecx, ebx
or ecx, ebx
xor ebx, 0x708fbb69
xor ecx, edi
jmp 0x49774c
mov eax, 2
or edi, edx
mov edx, 0x709ad814
xor edx, ebx
mov ebx, ecx
add ecx, edi
or edi, ecx
mov edi, edx
jmp 0x497e57
cmp byte [esi], 0
jmp 0x496e42
mov esi, dword [esi]
mov ecx, edx
neg edx
or edx, ecx
xor ecx, ebx
sub ecx, 0x70dc048e
not ecx
add ebx, ecx
jmp 0x496c11
mov esi, dword [esi]
xor ebx, 0x70e73c8b
sub ecx, ebx
add edi, ecx
or ecx, edx
and edx, ecx
mov ebx, 0x70e8c68e
add edx, ebx
and ebx, ecx
sub ecx, edx
jmp 0x49669b
mov esi, dword [esi]
sub ecx, edi
sub edi, edx
mov ebx, edi
ror ecx, 2
inc ebx
xor ebx, edi
or edi, edx
and ecx, edi
xor edx, ebx
jmp 0x497602
add esp, 0xe8
add edx, edi
add ebx, edx
inc ecx
or ebx, 0x711a6a5c
ror ebx, 4
xor edi, ebx
jmp 0x497d21
mov dword [esp + 0x58], esi
add ebx, ecx
mov edi, edx
and edx, ebx
dec ebx
and ebx, 0x713a32a2
mov ebx, edi
or ebx, 0x713ad0a6
xor edx, edi
ror edx, 1
mov edi, 0x713becb1
and ecx, ebx
bswap ebx
add edi, ecx
not edx
shr ebx, 0x1e
and ecx, 0x713ea197
jmp 0x4956bf
inc dword [esp + 0xc]
xchg ecx, edx
dec edx
xor ecx, edx
and ebx, ecx
rol ebx, 0xc
ror ecx, 0xd
or edx, edi
sub ecx, ebx
or ecx, 0x714b7eff
xor edi, 0x714c21c5
xchg ecx, edi
bswap ecx
xchg ebx, ecx
jmp 0x4965f1
add esi, dword [esp + 0xc]
add edx, 0x714ed132
dec edi
rol ecx, 0xc
add ecx, edx
jmp 0x4968ba
add esi, dword [esp + 0xc0]
sub edi, edx
and edx, ecx
xchg ecx, edx
xor edx, edi
and edx, ebx
inc ecx
xor ebx, ecx
xchg edx, edi
or edx, 0x7156078f
jmp 0x496cd9
add esi, dword [esp + 0xd8]
or edi, ecx
xchg edi, ebx
xor edi, ebx
xchg ebx, ecx
or ebx, edx
mov edx, ecx
sub ecx, ebx
xchg ebx, edx
sub edi, 0x717d27d9
or edx, edi
add ebx, ecx
dec edi
xor ebx, ecx
jmp 0x4948ee
mov dword [esp + 0xc], 0
and ebx, edx
mov edi, ecx
or ecx, 0x71a47ea2
inc ebx
and edx, ebx
or edi, 0x71a674ad
sub ebx, edi
mov edi, 0x71a7b592
xchg ebx, edi
sub edi, ecx
and edi, 0x71a9adf1
add ecx, ebx
xor ebx, edx
mov edx, ebx
sub ebx, edx
xor ecx, edx
jmp 0x49600e
add esi, 0x3c
sub ecx, edi
xor edx, ecx
or edx, ecx
sub edi, edx
sub edx, edi
sub edi, ecx
or edx, ecx
mov ebx, 0x71c1f1bd
mov ecx, 0x71c2414b
jmp 0x495b6d
mov esi, dword [esp + 0xc0]
sub edx, edi
xor edx, ecx
xor edi, ebx
and ebx, ecx
sub ecx, ebx
add ecx, edi
ror ebx, 0x1a
xor ebx, 0x71f140db
and ecx, edx
jmp 0x4960a7
mov esi, dword [esi]
xchg ecx, ebx
add edi, ebx
and ebx, edi
xor ebx, ecx
and ecx, 0x72097f42
and ebx, 0x720a12db
xor edi, ecx
mov ebx, 0x720b496f
neg ecx
xchg ebx, edx
sub edi, ecx
jmp 0x497ceb
add dword [esp + 0xd8], eax
bswap ecx
sub ecx, 0x726882cb
and ecx, 0x7268fa44
neg edx
and edx, 0x72699e4d
add ecx, ebx
dec ebx
xor edi, edx
or ebx, edx
jmp 0x497316
xor al, byte [esi]
xor ecx, edi
or ebx, 0x72fd53ba
bswap ebx
inc ebx
sub edi, edx
jmp 0x497c8b
add dword [esp + 0xd8], 0x20
mov ebx, 0x731ffd2b
ror ebx, 0xc
xchg edx, ebx
add edx, edi
and ecx, 0x7322813a
and ebx, 0x7323235e
add ebx, edx
rol ecx, 0x19
xchg edi, ebx
or ecx, edi
or edi, 0x73265b59
mov ecx, ebx
and ecx, edi
xor ebx, ecx
jmp 0x49611c
mov dword [esp + 0x58], 0
not ecx
bswap ecx
xchg edi, edx
xchg ebx, edx
mov edx, ebx
add ecx, 0x734012d3
add edi, 0x7340bbf2
xor edx, edi
add ebx, edi
jmp 0x496cac
add dword [esp + 0xd8], esi
xchg ecx, ebx
mov edx, ecx
add ebx, edx
mov edx, ecx
neg edx
add ecx, edx
nop
ror ebx, 5
or edi, ebx
and edx, ecx
mov edx, ecx
jmp 0x495f5a
mov dword [esp + 0xc0], esi
shl edi, 0x11
mov edi, ebx
sub ebx, 0x735f2ffe
and edi, 0x735fc2e0
and ecx, edi
and ebx, edx
neg edx
or edi, 0x73622552
add ecx, edi
mov ebx, edi
sub edx, edi
mov ecx, ebx
and edi, ebx
jmp 0x496175
mov esi, dword [esp + 0xd8]
or edi, edx
rol ecx, 5
or ebx, 0x736c3ad8
or ecx, 0x736cddef
xchg ecx, ebx
and edx, ebx
or edx, 0x736e90c2
xor ebx, edi
sub ecx, 0x736fdc2b
or edx, 0x737072b4
xor edi, ecx
jmp 0x49538e
mov esi, dword [esp + 0xc0]
add edi, 0x73793d20
or ebx, edi
xchg ebx, edi
mov edi, edx
mov edi, ecx
add ecx, edx
mov edi, edx
add ecx, edi
mov edi, ebx
mov ecx, ebx
mov edi, ebx
xchg ebx, edi
sub ebx, edx
jmp 0x4959a2
movzx esi, word [esi]
xchg ecx, edx
add edi, ebx
neg edx
or edi, ebx
bswap ecx
xchg ebx, edi
shl edx, 0x12
shr ebx, 4
and ebx, ecx
jmp 0x494fbd
add dword [esp + 0xd8], 4
or edi, ebx
or ebx, 0x7399e99b
or edx, ecx
or ecx, edi
sub ecx, ebx
sub ebx, edi
shr ecx, 0x16
and ebx, 0x739d6ce8
dec ebx
sub ebx, 0x739eb83c
xor edi, edx
jmp 0x4964a4
mov dword [esp + 0xd8], esi
mov edi, ebx
sub ecx, edi
ror edi, 4
sub edx, ecx
sub ebx, edi
or edx, ecx
xor edi, ecx
jmp 0x497066
mov esi, dword [esp + 0xd8]
xchg edi, ebx
or ebx, 0x7409b93a
sub ebx, 0x740a5255
neg edi
add ecx, 0x740b7e5d
xchg edi, ebx
jmp 0x4964e9
mov esi, dword [esi]
and ecx, ebx
and edx, ecx
add edx, edi
xchg edi, ecx
add edi, edx
rol ebx, 1
sub ecx, edx
jmp 0x495706
add dword [esp + 0x58], 4
xor edi, 0x743faa74
ror edx, 6
or edx, edi
shr edx, 0xe
jmp 0x4967e9
add esi, dword [esp + 0xc0]
mov ecx, edi
mov edx, ebx
neg ecx
mov edx, ebx
or edi, edx
dec ebx
xchg ecx, edx
xchg ecx, ebx
mov ebx, 0x745b3477
sub edi, edx
or edi, edx
neg ebx
add edi, 0x745d7b5d
xor edi, ebx
xor ecx, edi
mov edx, ecx
jmp 0x495650
mov esi, dword [esp + 0x58]
and edi, 0x748a8747
xor ecx, ebx
not ecx
dec edi
and edx, 0x748d5919
inc edi
xor edx, ecx
and edx, ebx
jmp 0x495059
mov esi, dword [esi]
or ebx, edi
or edx, ebx
ror edi, 0xe
add ecx, 0x74ab3786
shl edi, 0x12
and edx, ecx
or ebx, ecx
neg edx
xchg ecx, edx
neg ecx
neg ecx
dec edx
or ebx, 0x74b1aa48
sub ebx, 0x74b26ba2
jmp 0x4973c9
mov eax, 4
inc ebx
sub ecx, 0x74b3ef36
rol edi, 0xb
xor edx, 0x74b52c56
sub ebx, ecx
and edx, ecx
shl ecx, 8
and edi, edx
bswap edi
add ecx, edx
add ebx, edx
jmp 0x49619f
sub dword [esp + 0xd8], 8
add ecx, edi
xchg ebx, ecx
ror ecx, 0x1d
xor ecx, edx
mov edx, ebx
mov ebx, edx
jmp 0x496b71
mov esi, dword [esp + 0xd8]
mov ecx, edx
and edi, edx
mov ecx, edi
shr ecx, 0xd
or ecx, ebx
and edx, ecx
add edi, ebx
add edi, edx
xor edi, edx
jmp 0x49532f
add esi, dword [esp + 0xc0]
or ecx, 0x7560e007
add ebx, edi
bswap ecx
xchg ebx, edx
xchg edx, edi
inc ebx
xchg edx, edi
mov edi, 0x7565294a
mov edi, ebx
dec ecx
sub edx, 0x756708e8
jmp 0x496296
pop esi
or ecx, ebx
neg ebx
xor edx, edi
shl edi, 0xd
sub ebx, 0x756a40b7
mov ecx, ebx
xchg ecx, edx
or edx, 0x756c4109
or ebx, 0x756cd4cc
jmp 0x49768d
mov dword [esp + 0xc0], 0
rol edi, 2
add ecx, edx
xor edx, ecx
xchg ecx, edx
xor ebx, edi
rol ecx, 0x14
ror edi, 6
rol ecx, 0xf
xchg ebx, edi
mov ecx, 0x7581618d
mov ecx, edx
jmp 0x497030
mov dword [esp + 0x58], esi
xchg edi, ebx
or edx, edi
xor edi, edx
xor ecx, 0x7584953f
neg edi
add edx, ebx
or ebx, edi
jmp 0x4950d2
mov esi, 0x30
mov edx, edi
sub edx, edi
add ebx, edx
mov edx, 0x758c0a22
sub ecx, ebx
shl edx, 0xe
sub ebx, edx
xchg ebx, ecx
and edx, ecx
xor ebx, edi
xor edx, edi
xor edx, ebx
add ebx, ecx
or edx, ecx
and ecx, ebx
jmp 0x4975ef
xor eax, eax
and ebx, edx
xchg edx, edi
ror edx, 0x1d
sub ecx, ebx
jmp 0x495ea9
jne 0x4956bf
sub edi, edx
add edi, 0x75a5216e
or edx, ebx
dec edi
sub edi, edx
not ecx
and ecx, ebx
mov edi, ebx
mov ebx, edx
rol ecx, 8
xor edi, edx
shl edx, 0x15
jmp 0x496216
mov esi, dword [esp + 0xc0]
and ecx, ebx
or ecx, ebx
shl ebx, 0xf
neg edx
add ebx, ecx
or ecx, ebx
shr edx, 0x1f
xor edi, ebx
not ebx
bswap ecx
and ebx, edx
inc ebx
mov ebx, ecx
jmp 0x4957db
jne 0x495ea9
sub ebx, ecx
xor edx, 0x75c58f1b
shl edi, 0x1c
neg ebx
add edi, ebx
or edx, ebx
jmp 0x496c3c
mov dword [esp + 0xc], eax
add edi, ecx
xor ecx, 0x75de731d
and ebx, 0x75df2a58
xor edx, 0x75e01203
add edx, ecx
not ecx
sub edi, ebx
xor ebx, edi
jmp 0x496a01
mov dword [esp + 0xd8], 0
add ecx, 0x761abd14
not ebx
not edx
xor ecx, ebx
rol edx, 0x10
bswap ecx
not ecx
jmp 0x4972b4
mov esi, dword [esp + 0x58]
xor edx, 0x7621bea7
xor ebx, edx
and ebx, edx
shl ebx, 0x18
add ecx, ebx
jmp 0x4956ee
push esi
or edx, edi
nop
xor ecx, ebx
jmp 0x496d23
mov dword [esp + 0xb8], esi
xchg ecx, edx
mov edx, ecx
xor ebx, 0x768a427a
rol edi, 0x19
mov edx, ecx
dec ecx
bswap ecx
mov ecx, edi
mov ebx, edx
sub edi, edx
add edx, ebx
or ecx, 0x768f7e1c
nop
jmp 0x496cf7
mov esi, dword [esp + 0xd8]
sub edi, edx
xor ecx, ebx
and edx, ebx
sub ecx, edx
rol ecx, 0x16
shr ecx, 0x1c
xchg edi, edx
sub edi, ebx
sub ecx, ebx
xor ecx, edx
add edx, edi
mov ecx, ebx
sub ebx, 0x76a01d29
nop
mov ecx, edx
jmp 0x49688a
add esi, dword [esp + 0xc0]
not edx
not edx
and edx, edi
xor edi, edx
xor edi, ebx
xchg edi, ebx
ror ebx, 5
or ecx, edi
xchg edi, ecx
shl edx, 2
add edi, edx
mov ebx, 0x76bdcf96
and edi, 0x76be6b41
jmp 0x49556b
inc esi
sub edx, edi
add ebx, ecx
or ebx, edx
xor edx, edi
shl ebx, 7
not edi
or ecx, edi
dec ebx
shl ebx, 0x18
and ebx, ecx
sub ebx, edi
neg ecx
jmp 0x4951d8
mov esi, dword fs:[esi]
shr edx, 4
or ecx, 0x7729b6fb
and edi, ecx
jmp 0x49793b
mov esi, dword [esi]
sub ebx, edx
sub ecx, ebx
rol edx, 9
sub edx, 0x772cced3
mov ebx, ecx
inc ecx
mov edx, edi
dec ecx
xchg ecx, edi
xchg edi, ebx
xor ecx, edi
add ebx, ecx
jmp 0x494f09
cmp eax, dword [esp + 0xb8]
jmp 0x496d99
add esi, dword [esp + 0xc0]
xor edx, ebx
xor edi, ecx
add edx, ebx
and ebx, ecx
or edx, 0x775fdebd
add edx, edi
jmp 0x4972a9
add esi, 0xc
sub edi, ecx
and edi, edx
or ebx, edx
add edx, ecx
xor edi, ecx
nop
and edx, ebx
or edi, ebx
or ebx, ecx
sub ebx, edx
jmp 0x494bc5
add esi, 0xc
and ebx, edx
add edx, edi
xor edx, edi
add edi, 0x77f23918
sub ebx, edx
rol edi, 7
mov edx, edi
xchg ebx, ecx
shr ebx, 0x18
and edi, 0x77f623e0
jmp 0x4954b8
rol eax, 8
shl edx, 6
or ecx, 0x78421fcb
shl ebx, 0x1d
add edx, 0x7843687e
add edx, 0x7843fff9
xchg edx, edi
shr edi, 0x17
sub ecx, ebx
add edi, edx
or edi, 0x7846ce22
jmp 0x49756b
add esi, 0x18
xchg edi, edx
or edx, edi
and edx, edi
shr ebx, 0x19
xchg edx, edi
jmp 0x494b70
mov dword [esp + 0xd8], esi
xor edi, ecx
mov ecx, ebx
shr edi, 0xf
add ebx, edi
mov ebx, edx
xor edi, ebx
and ecx, edx
or edx, edi
jmp 0x497e37
ret
add dword [esp + 0xd8], 0x78
add edi, ecx
add ebx, ecx
add ecx, 0x78877d7c
xchg ebx, edx
shl edi, 0x15
add edx, ebx
and ebx, ecx
jmp 0x496dc1
mov esi, dword [esp + 0xc]
shl ecx, 0xf
add ebx, edx
xor edi, 0x788bb3a2
rol edx, 0xd
jmp 0x494dc6