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

Disassembly:
add dword [esp + 0x54], 0x78
sub ebx, edi
xchg esi, edi
sub ebx, 0x39e13ea6
mov edi, ebx
or ebx, 0x39e201ab
or edi, ebx
xor edi, esi
xor esi, ebx
xchg edi, ebx
or ebx, esi
xchg edx, edi
and ebx, esi
jmp 0x4972d5
mov ecx, dword [esp + 0x54]
and ebx, 0x39e51ccd
mov ebx, edx
sub edi, esi
xchg edi, edx
bswap esi
dec esi
mov edi, edx
or ebx, edi
add edi, edx
or ebx, 0x39e8966e
shl ebx, 9
jmp 0x495d7b
mov ecx, dword [ecx]
ror esi, 5
and esi, 0x39f779ed
jmp 0x495e18
add ecx, dword [esp + 0xa8]
and esi, 0x39fb469e
nop
or esi, 0x39fc1ec9
and ebx, 0x39fc8899
dec esi
shl ebx, 0x18
jmp 0x495a8b
add esp, 0xbc
mov edi, esi
dec ebx
sub esi, edx
or edi, 0x3a0f814c
xchg ebx, edi
rol esi, 0xc
xor esi, ebx
jmp 0x49707b
cmp eax, dword [esp + 0x40]
jmp 0x495eb9
mov eax, 2
shl edi, 7
shr edx, 1
and edx, 0x3a3f57da
nop
or edi, 0x3a402101
sub esi, ebx
shr esi, 0x14
sub esi, edi
inc edi
jmp 0x4957cb
push ecx
sub ebx, esi
or ebx, edx
rol edi, 3
or esi, ebx
inc esi
inc esi
xor ebx, edi
xor edx, esi
sub ebx, edx
add edi, esi
shl esi, 4
jmp 0x496d50
add dword [esp + 0x10], 4
mov edx, edi
mov ebx, 0x3a96c6f0
and edi, edx
xchg esi, edx
mov edi, ebx
xor edi, ebx
mov ebx, edx
dec edx
xor esi, 0x3a99acf5
rol edi, 0x1b
jmp 0x496e28
mov ecx, dword [esp + 0x10]
xor edi, esi
xchg edi, esi
xchg edx, esi
xor ebx, edi
and edx, edi
shl edx, 0x12
not edx
rol edx, 0xd
jmp 0x4960ce
mov ecx, dword fs:[ecx]
add esi, edi
or esi, ebx
mov ebx, esi
xor ebx, 0x3aacd6cc
xchg edi, edx
not esi
add edi, 0x3aadf6ff
sub esi, edx
or edi, edx
sub edx, 0x3aaf22fa
bswap edi
jmp 0x4958c9
add ecx, dword [esp + 0xa8]
xor ebx, esi
inc edi
or edi, edx
and ebx, 0x3ab5bb36
neg esi
jmp 0x49458b
mov ecx, dword [ecx]
shl esi, 0x19
sub ebx, esi
add ebx, edi
jmp 0x4944fe
mov dword [esp + 0x54], ecx
or edi, 0x3ac06c2e
dec edx
xor edx, edi
xor esi, edx
mov edi, edx
and edi, edx
or ebx, edx
sub esi, edx
jmp 0x494bd6
mov ecx, dword [esp + 0xa8]
dec edx
or esi, edx
sub edx, esi
xor edx, ebx
ror edi, 0x17
neg edx
or edi, edx
jmp 0x4967fa
rol eax, 8
xchg ebx, esi
mov edi, esi
mov esi, edi
shr esi, 0x16
xchg edx, edi
and edi, esi
or ebx, edx
xchg esi, ebx
shr ebx, 7
not edx
or edi, esi
mov edx, esi
jmp 0x4969bf
mul ecx
nop
mov edx, esi
xor edx, ebx
not ebx
and ebx, esi
xchg edi, edx
sub esi, edi
sub ebx, 0x3b02fb08
and esi, ebx
and edi, esi
jmp 0x496aa8
mov dword [esp + 0xa8], 0
rol edi, 0x16
or esi, 0x3b3ef961
sub ebx, edx
shl ebx, 9
add edx, esi
or edx, edi
jmp 0x4954b0
mov ecx, dword [ecx]
dec ebx
rol ebx, 0x1f
shr esi, 0x19
and esi, 0x3b4543e6
mov edi, 0x3b45addb
sub ebx, edi
add edx, 0x3b467825
or edi, 0x3b46da45
and edx, edi
bswap edx
inc esi
shr ebx, 0x16
jmp 0x4952e0
mov ecx, dword [esp + 0x54]
or ebx, 0x3b8e363f
shr ebx, 0xb
and esi, edi
sub esi, 0x3b8f5f6d
xor edx, esi
mov esi, edi
xchg esi, edi
xchg ebx, edi
or esi, 0x3b914edf
ror edi, 0x10
sub edx, ebx
jmp 0x494b15
mul ecx
xchg esi, ebx
rol esi, 0xb
shr esi, 3
add esi, 0x3ba1e927
sub ebx, 0x3ba24a10
bswap esi
add ebx, esi
xor esi, edi
xchg esi, edi
shr esi, 8
mov esi, edi
sub esi, edi
jmp 0x495cc2
add ecx, 0xc
xor edx, 0x3bae494b
shl ebx, 0x1f
inc ebx
add edi, esi
or edx, edi
add edx, ebx
ror edx, 0x13
mov edx, 0x3bb1799d
bswap edx
neg edi
or ebx, edi
bswap edi
inc edi
jmp 0x4944d1
inc dword [esp + 0xac]
mov esi, 0x3bc35dbb
mov edx, 0x3bc3b9e9
xor esi, ebx
mov edi, esi
dec esi
shr ebx, 0x11
and esi, 0x3bc58c9e
mov esi, edi
jmp 0x4949a2
mov dword [esp + 0x54], 0
mov edx, esi
add ebx, esi
shr ebx, 0x1b
or esi, edi
and edx, ebx
mov ebx, edx
xor edi, edx
mov edi, 0x3be6c448
and ebx, 0x3be7270e
shl edi, 0x12
jmp 0x496323
add dword [esp + 0x54], 4
sub edi, 0x3c091067
mov esi, edx
and ebx, esi
mov edx, 0x3c0a3bd7
neg ebx
bswap ebx
inc esi
and esi, edx
inc esi
or edx, ebx
jmp 0x4960a0
mov ecx, 0x30
mov ebx, edi
dec ebx
sub esi, edx
not edi
rol ebx, 0xf
add esi, edi
xor edi, ebx
jmp 0x494a5e
mov ecx, dword [esp + 0xac]
bswap edx
xchg edx, edi
add ebx, 0x3c3de684
xor edi, esi
or edx, 0x3c3ee206
and edx, esi
shr ebx, 0xe
xor edi, 0x3c4023f8
xchg edi, esi
add edi, ebx
or ebx, edx
shl ebx, 0x1f
or ebx, edi
jmp 0x49526a
add ecx, dword [esp + 0xa8]
not esi
xor edx, 0x3c44a48e
mov esi, edi
add ebx, edi
shr edi, 0x16
sub ebx, edx
xchg ebx, edx
sub esi, 0x3c472e26
jmp 0x497448
mov ecx, dword [ecx]
dec ebx
add edx, esi
sub edx, 0x3c48848a
bswap ebx
xchg ebx, edi
sub ebx, edi
sub edx, ebx
sub edi, ebx
sub edi, 0x3c4ae206
shr edx, 0x12
mov edx, edi
jmp 0x495812
add ecx, 0x18
xchg edx, esi
and esi, edi
xor edi, esi
sub esi, edi
mov edx, ebx
sub esi, ebx
shl esi, 0x14
xor ebx, edx
jmp 0x49717a
add ecx, 0xc
bswap ebx
shr esi, 5
sub edi, edx
or edi, 0x3c5c2477
or ebx, edx
jmp 0x494f71
add ecx, dword [esp + 0xa8]
xor edi, 0x3c5e8ee9
and esi, edx
mov esi, edx
and esi, edi
mov ebx, edx
xor edx, 0x3c605c9d
add esi, edi
or esi, edi
jmp 0x49722e
add ecx, dword [esp + 0xa8]
ror ebx, 5
or ebx, edi
sub edx, ebx
jmp 0x4948ff
mov dword [esp + 0x10], ecx
xchg esi, edi
mov edi, ebx
add edi, ebx
add edi, edx
add edx, 0x3c8dc2fe
and edi, ebx
xchg edi, edx
xor esi, ebx
shr edx, 0xb
jmp 0x495398
movzx ecx, word [ecx]
sub esi, 0x3c9d4e08
and edi, esi
dec edx
mov ebx, edi
xor edx, esi
xor esi, edx
and edx, 0x3c9fdbbf
add ebx, 0x3ca04529
xor ebx, 0x3ca0b15a
xor edx, ebx
and ebx, 0x3ca17e1d
jmp 0x494d20
pop ecx
add edi, edx
dec edi
inc edi
and edi, ebx
bswap edx
ror edi, 5
dec edx
and esi, ebx
rol edi, 5
mov edx, 0x3ca6034e
mov edi, 0x3ca66ed7
or edx, 0x3ca799b6
dec edi
jmp 0x4946e3
mov dword [esp + 0xac], eax
dec ebx
xor edi, esi
and edx, ebx
xchg ebx, edi
dec ebx
not esi
sub esi, ebx
or esi, edi
and edi, ebx
and ebx, edi
jmp 0x496e7e
mov dword [esp + 0x54], ecx
neg edx
rol esi, 0x16
add edi, ebx
shr edi, 0xe
mov ebx, edx
xor esi, edi
add edi, ebx
inc esi
xchg esi, edi
not edi
xchg edx, esi
or edx, esi
jmp 0x494424
mov ecx, dword [ecx]
xor edx, esi
sub edx, 0x3cf6ac5a
mov edx, ebx
add edx, ebx
mov edx, ebx
mov edi, edx
neg ebx
xchg edi, edx
or edi, ebx
jmp 0x494aae
mov ecx, dword [ecx]
and esi, ebx
shr edx, 1
add edi, edx
bswap esi
sub ebx, edi
sub edi, edx
and esi, 0x3d0cfd95
xchg edx, ebx
mov edi, edx
sub ebx, esi
mov edx, esi
shr esi, 7
mov esi, edx
and ebx, 0x3d0faf94
add esi, edi
jmp 0x4965f8
jne 0x495398
mov edx, esi
rol edi, 0x10
or edx, 0x3d1ddbdb
add edi, ebx
add ebx, esi
add esi, 0x3d1f5bf0
rol esi, 0xd
or esi, 0x3d20b17a
mov esi, edi
or edi, 0x3d218eae
rol edi, 0xf
and esi, 0x3d226682
or edi, esi
shl edi, 0x1a
jmp 0x495618
mov ecx, dword [esp + 0x54]
xor edi, 0x3d551682
mov ebx, 0x3d557361
xor esi, 0x3d55d02e
sub edi, esi
sub esi, 0x3d56b1bf
mov edi, edx
or ebx, edx
mov esi, 0x3d57c954
jmp 0x495837
add ecx, dword [esp + 0xac]
and edi, esi
not edi
add ebx, esi
sub esi, 0x3d5948ec
ror edx, 0x1a
sub edi, 0x3d5a0439
xor esi, edi
xchg esi, edx
add ebx, edx
or edi, ebx
xchg edi, edx
dec edi
jmp 0x496b45
xor al, byte [ecx]
sub edi, esi
sub edi, esi
add edx, edi
and ebx, 0x3d92302e
not ebx
rol esi, 0x1e
or edi, esi
jmp 0x494c3b
mov dword [esp + 0x40], ecx
nop
add ebx, edx
or edi, ebx
sub esi, edi
xor edx, 0x3da096e2
xor edi, 0x3da0fe22
nop
inc esi
mov esi, edx
jmp 0x495719
add ecx, 0x3c
xor esi, 0x3da289ca
xchg ebx, edi
xchg ebx, esi
rol ebx, 3
ror ebx, 0xb
mov edx, 0x3da4650f
jmp 0x4964e7
add ecx, dword [esp + 0x54]
and esi, edi
dec edi
neg edx
ror edx, 0x1f
nop
inc esi
or edi, ebx
rol edx, 0x15
jmp 0x4970c3
mov ecx, dword [ecx]
shr ebx, 0x1a
ror esi, 0x1d
or edx, 0x3dd2d49e
rol esi, 0x1d
mov edx, 0x3dd3a535
xor ebx, 0x3dd40dd9
add edi, edx
nop
shr esi, 0x14
sub edx, esi
mov esi, 0x3dd61fc3
xchg esi, ebx
xor ebx, edx
xchg edi, edx
jmp 0x495d3d
mov ecx, dword [ecx]
sub edx, ebx
or edx, esi
nop
rol edi, 0x16
xor edi, esi
xor edi, edx
xor esi, 0x3df4aef2
and edx, ebx
neg edx
jmp 0x4958b0
mov dword [esp + 0x10], 0
neg edx
and esi, edi
add edx, 0x3e061877
shr edx, 0xc
rol esi, 0x18
and edx, edi
or ebx, edx
xor edx, 0x3e084e4f
xor esi, 0x3e08ae19
and ebx, edi
jmp 0x494f3c
add dword [esp + 0x54], ecx
xor esi, edx
sub ebx, edx
mov esi, edx
rol edi, 0xf
xchg edi, ebx
mov esi, edx
xor edx, edi
sub edx, esi
or ebx, edx
jmp 0x496a7c
inc ecx
xor edx, ebx
or edx, esi
or esi, 0x3ed474ed
xor esi, edi
or edx, edi
xor edx, 0x3ed50e20
add ebx, edi
rol edi, 0x19
xchg edi, ebx
shr ebx, 0x17
or edi, 0x3ed64134
xor ebx, esi
jmp 0x49719a
add dword [esp + 0x54], 0x20
sub esi, ebx
xor edx, 0x3f205d04
xor esi, edx
or edx, 0x3f20ca97
mov edx, edi
ror edx, 9
mov edi, esi
sub ebx, esi
add edi, edx
xor esi, edi
and ebx, esi
jmp 0x4951bb
add dword [esp + 0x54], eax
sub edi, ebx
or esi, ebx
ror edi, 2
sub ebx, 0x3f258f09
mov ebx, edi
xchg edx, ebx
xor esi, edi
shl ebx, 0x1e
xor edi, ebx
sub edi, esi
xor esi, 0x3f287b2b
and ebx, 0x3f28de69
jmp 0x494451
mov eax, 4
mov edx, ebx
rol ebx, 0x1a
not esi
and ebx, edi
add ebx, 0x3f345a05
add esi, 0x3f3495cd
add esi, ebx
not ebx
xchg edx, ebx
xor edi, 0x3f35923a
inc edx
sub esi, edx
xor esi, 0x3f364e8e
sub esi, edi
add ebx, 0x3f36d0b2
jmp 0x495b03
mov ecx, dword [esp + 0xa8]
ror edi, 0x15
mov esi, 0x3f3c9905
xor ebx, 0x3f3cd147
mov esi, edx
add edx, esi
rol ebx, 0xf
neg edi
ror esi, 7
and edi, ebx
dec edi
xchg ebx, esi
jmp 0x496346
mov dword [esp + 0xa8], ecx
neg edx
mov edi, ebx
nop
xor edi, 0x3f4894a3
dec edx
mov ebx, esi
xor edi, ebx
xchg edi, edx
inc ebx
jmp 0x496bd2
jne 0x496294
bswap esi
xchg esi, edi
and edi, ebx
or ebx, 0x3f505d07
sub edx, ebx
xchg edx, esi
xchg ebx, esi
jmp 0x495b34
xor eax, eax
sub ebx, edx
or edi, ebx
and esi, edx
mov esi, edi
dec ebx
jmp 0x496294
mov dword [esp + 0xac], 0
or edx, esi
and ebx, 0x3f6024aa
or esi, ebx
and esi, edx
and edx, ebx
or ebx, edi
sub edx, esi
add esi, edi
jmp 0x496699
mov ecx, dword [esp + 0x10]
neg edx
mov esi, 0x3f6a7d59
or ebx, esi
xor edi, 0x3f6aebcf
or edi, ebx
mov esi, ebx
xchg ebx, edi
sub edi, 0x3f6c079d
bswap edi
jmp 0x497274
mov ecx, dword [ecx]
xor ebx, edi
add edi, 0x3f6d5e64
and edi, edx
and edx, ebx
sub edi, ebx
add ebx, esi
and edi, edx
add ebx, edi
sub edx, edi
jmp 0x4958f2
sub dword [esp + 0x54], 8
xchg esi, ebx
and edi, ebx
sub edx, esi
xchg ebx, edi
or edi, esi
add esi, ebx
dec ebx
xchg edi, esi
sub edi, esi
jmp 0x497009
mov ecx, dword [esp + 0x54]
ror esi, 0x17
inc edi
shr esi, 9
or esi, edi
jmp 0x496e51
ret
mov ecx, dword [ecx]
mov edx, ebx
xchg ebx, edx
sub edx, esi
and edi, esi
add edx, 0x3fac0527
mov edi, esi
rol ebx, 0x1c
mov ebx, 0x3fad4001
shl ebx, 0x17
shr edi, 0x10
add ebx, 0x3fae68b4
shr ebx, 0x1f
jmp 0x494b23
mov ecx, dword [ecx]
xor ebx, esi
not esi
shl esi, 0x11
or edi, 0x3fbac057
xchg edi, ebx
or edx, ebx
mov edx, 0x3fbb5a4b
dec ebx
xor esi, edx
jmp 0x496c84
cmp byte [ecx], 0
jmp 0x496cd0
mov dword [esp + 0x54], ecx
shl ebx, 0x14
and edx, edi
rol edi, 0x11
xchg esi, edx
and esi, edi
or esi, ebx
shl esi, 0xb
sub esi, ebx
and edx, esi
xor esi, edx
sub edx, edi
and ebx, edi
jmp 0x494a08
mov ecx, dword [ecx]
sub edx, ebx
mov esi, edx
or edx, 0x3fd0fb38
and edi, edx
add edx, edi
shl esi, 3
sub edi, edx
ror esi, 0x10
sub esi, edx
sub edx, esi
jmp 0x495978
mov ecx, dword [esp + 0xa8]
or edx, edi
add ebx, 0x3fdd9650
sub ebx, esi
mov ebx, 0x3fde4cfb
add esi, edi
add esi, edx
sub edi, 0x3fe03008
xchg edx, esi
dec ebx
dec edi
xor ebx, 0x3fe1caa7
sub ebx, edi
shl esi, 0x16
ror edi, 0x14
jmp 0x4963f6
mov dword [esp + 0x10], ecx
inc edx
and ebx, esi
add edi, 0x400d56a3
and esi, ebx
or ebx, edx
xchg esi, ebx
xchg ebx, edi
xor edi, edx
add edi, 0x400f9f38
xchg edi, ebx
jmp 0x494724
sub esp, 0xbc
xchg ebx, edi
sub ebx, edx
or esi, 0x4031b62a
add ebx, 0x403216a3
or edx, edi
dec esi
dec esi
xor esi, edx
xor ebx, edx
shr ebx, 8
add ebx, esi
jmp 0x496da3