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

Disassembly:
mov dword [esp + 0xd4], ecx
inc edi
xor esi, edx
or esi, edi
sub esi, edx
mov edx, 0xefdfa161
or edi, edx
or edx, edi
sub esi, edx
shr edi, 9
sub edx, esi
jmp 0x4759be
add ecx, 0x18
add ebx, edx
xor esi, 0xefecbfc7
and edi, ebx
mov edi, 0xefed34bb
xchg esi, edi
add ebx, 0xefedac47
shr ebx, 0xf
mov ebx, edi
or ebx, edi
neg edx
not edi
add edx, 0xefef1edb
bswap esi
or edi, ebx
jmp 0x476e66
mov ecx, dword [esp + 0xe4]
mov esi, 0xeffa7837
xor edi, esi
not esi
xor esi, 0xeffb4a4d
xor esi, ebx
sub edi, 0xeffbc9e1
and esi, ebx
inc edx
bswap esi
xchg esi, edx
jmp 0x477e39
add dword [esp + 0xe4], 4
and edi, esi
bswap ebx
inc edi
xchg ebx, esi
shr ebx, 1
sub esi, ebx
jmp 0x4760eb
mov ecx, dword [ecx]
nop
and esi, 0xf0031d87
xchg edx, esi
shl edi, 0xb
or edi, ebx
dec edi
xor ebx, edx
sub ebx, edx
sub ebx, edx
rol esi, 0xf
jmp 0x47502e
mov ecx, dword [esp + 0xe4]
sub esi, ebx
rol edx, 5
or esi, ebx
shl edi, 0x10
bswap edx
add edi, edx
and esi, edx
or edx, edi
and esi, ebx
xor ebx, edx
or esi, edi
xchg ebx, edi
jmp 0x4759a0
add dword [esp + 0xe4], ecx
shl edx, 5
xor edi, edx
xchg edx, esi
rol edi, 0x14
xor edi, esi
xor edi, edx
jmp 0x47637f
add ecx, 0x3c
rol edx, 0x10
sub edx, ebx
not edx
xor edx, 0xf7bf3a91
add ebx, 0xf7bf77e1
add ebx, 0xf7bfb3ab
shr esi, 0x16
mov ebx, esi
sub edx, edi
inc edx
jmp 0x477727
xor eax, eax
mov ebx, edx
add esi, edx
dec ebx
and edx, esi
xchg edi, ebx
or esi, edi
or edx, esi
xchg esi, edx
ror edx, 0x11
rol ebx, 0x1b
jmp 0x47563c
xor al, byte [ecx]
mov edi, ebx
mov edi, esi
sub edx, edi
add edi, 0xf7dba7d1
xchg edx, edi
not esi
or edi, 0xf7dc683d
neg edx
xor ebx, esi
xchg esi, ebx
or ebx, edi
and ebx, edi
not esi
not edx
jmp 0x476a70
add ecx, dword [esp + 0x128]
mov edx, 0xf7de8bd1
and edx, edi
and edx, 0xf7df0937
and ebx, edx
sub ebx, esi
add edx, ebx
mov esi, ebx
xchg edi, ebx
jmp 0x476c7e
mov ecx, dword [esp + 0xe4]
sub edx, esi
xchg edi, edx
xor edx, edi
add ebx, esi
and ebx, esi
ror esi, 0x16
xor edi, 0xf802f277
shr edi, 0x14
jmp 0x476ffd
mov ecx, dword [esp + 0x18]
sub ebx, edx
sub edx, edi
bswap edi
or esi, edi
xor ebx, edi
rol ebx, 0xe
xor edi, ebx
dec ebx
jmp 0x476466
mov ecx, dword [ecx]
inc esi
and edi, esi
xchg ebx, edi
add ebx, 0xf8173053
xchg esi, edx
neg edx
nop
add esi, ebx
sub edi, ebx
shl edi, 0xb
jmp 0x475667
mov ecx, 0x30
ror ebx, 0xf
and esi, edx
inc edi
not edi
add edx, esi
mov esi, edi
and esi, ebx
sub edx, edi
shr ebx, 8
sub edi, 0xf81b17bd
shl esi, 2
mov edx, esi
dec ebx
mov edx, ebx
jmp 0x4761f4
add ecx, dword [esp + 0x128]
rol edx, 0x1f
xor edx, esi
xchg edx, esi
ror edi, 0x1b
xor esi, edx
or ebx, edx
neg edi
not edi
jmp 0x478003
cmp byte [ecx], 0
jmp 0x477399
add dword [esp + 0xb8], 4
shr edx, 0x1c
mov ebx, 0xf82df875
add esi, edx
mov edi, esi
shl edi, 0x1e
xchg edx, edi
xor edi, 0xf82f2e49
mov ebx, edi
sub edx, edi
add esi, ebx
sub edi, edx
xchg ebx, edi
neg ebx
inc ebx
jmp 0x4765b6
mov ecx, dword [esp + 0x128]
sub edi, esi
rol edx, 0x1c
mov ebx, edx
bswap esi
xor edx, esi
mov edx, edi
not ebx
xor ebx, edi
jmp 0x47544a
cmp eax, dword [esp + 0xd4]
jmp 0x475ed0
jne 0x476f76
and ebx, edx
ror esi, 0x10
xor edi, 0xf8781af7
xor ebx, esi
and edx, esi
xor ebx, 0xf878e74b
jmp 0x475162
mov ecx, dword [esp + 0xe4]
shr edx, 4
mov edx, ebx
sub esi, edx
xchg edi, edx
bswap ebx
and ebx, edi
not ebx
shl esi, 0x19
mov esi, edi
neg esi
and edi, ebx
add ebx, esi
sub ebx, 0xf8a29909
and esi, ebx
jmp 0x478126
mov ecx, dword fs:[ecx]
shr ebx, 0x1d
not esi
rol ebx, 0xd
xor edi, edx
neg ebx
and ebx, edi
and edi, ebx
xor edi, ebx
not edi
and ebx, edx
xor edi, edx
sub edi, 0xf8b7af1d
jmp 0x47659f
add dword [esp + 0xe4], 0x20
add esi, edx
add esi, ebx
inc edx
or ebx, 0xf8d2dd07
sub esi, 0xf8d31e6d
mov esi, edx
jmp 0x475101
mov ecx, dword [ecx]
and esi, ebx
bswap edx
xor edi, esi
neg edi
shr esi, 0xe
or esi, ebx
add edi, 0xf8df304f
neg edi
jmp 0x475a26
mov ecx, dword [ecx]
or edi, 0xf8dfc6e5
add edx, esi
sub edi, ebx
and ebx, 0xf8e0827b
or ebx, esi
sub ebx, 0xf8e100fb
and esi, 0xf8e140ab
mov edi, 0xf8e181fb
xchg ebx, esi
sub esi, ebx
jmp 0x4768d2
mul ecx
add edi, ebx
inc edx
mov esi, edi
add edx, 0xf8e32435
xchg ebx, edx
xchg ebx, edi
and edx, edi
mov ebx, edi
xchg edx, ebx
xchg edi, ebx
and esi, edx
and edi, ebx
xchg esi, edx
mov ebx, 0xf8e5a86f
jmp 0x477028
mov ecx, dword [esp + 0x128]
sub edi, ebx
xchg edi, edx
sub edi, 0xf8edf745
dec ebx
or edx, esi
and edx, edi
add ebx, 0xf8ef0525
or ebx, esi
neg ebx
shr ebx, 0x18
add esi, 0xf8f004eb
sub edx, ebx
jmp 0x476e38
sub dword [esp + 0xe4], 8
bswap edx
or edi, esi
xchg edi, esi
xor ebx, 0xf8f159b7
bswap edi
mov edx, esi
mov edi, edx
add edi, edx
neg ebx
xor edi, 0xf8f2e579
jmp 0x47586d
add ecx, 0xc
mov ebx, edx
xor edi, edx
mov ebx, esi
inc edi
sub edi, 0xf8fac6c3
or esi, edx
jmp 0x476438
mov ecx, dword [esp + 0xb8]
shl ebx, 0x1c
add edx, esi
xor edx, ebx
add edx, edi
and ebx, edi
inc esi
sub edx, esi
inc ebx
ror edx, 6
and ebx, 0xf8fda509
or edi, ebx
xor ebx, edx
mov ebx, edi
or esi, 0xf8fe9f15
jmp 0x47641c
mov ecx, dword [esp + 0x128]
not edx
sub ebx, 0xf93162cb
or edx, edi
sub esi, edi
xor edx, edi
inc esi
or edi, edx
and edx, 0xf932edb7
mov edi, edx
mov esi, 0xf9336a0d
jmp 0x4754cc
add ecx, 0xc
and edx, 0xf933bf41
and edx, esi
and edi, edx
neg edi
add edx, esi
xchg esi, edi
and esi, ebx
xor ebx, edi
xor ebx, edx
mov esi, edi
jmp 0x476f11
add ecx, dword [esp + 0x18]
sub ebx, esi
or esi, edi
or edx, edi
shr esi, 0xf
add edx, esi
shl edx, 6
mov edx, edi
or edx, 0xf93f2d2b
shr edi, 4
shr ebx, 0x14
or edx, esi
not edx
xor edx, 0xf9406da5
xor edx, 0xf940ae19
jmp 0x476ac2
mov eax, 2
xor esi, edi
xor edx, 0xf94e921f
shl edx, 0x1c
xchg esi, edi
dec edx
rol esi, 0x10
or edx, 0xf94fe4ff
add edx, esi
jmp 0x475984
rol eax, 8
not edx
or edi, 0xf953df5b
sub ebx, edx
bswap esi
shr edi, 7
and esi, edx
or edi, esi
or ebx, edi
add esi, ebx
ror edx, 0x13
add ebx, 0xf95627b7
or edx, 0xf956686d
jmp 0x478420
mov dword [esp + 0xb8], ecx
dec edi
xor esi, 0xf956ff03
ror edi, 0x11
xchg edi, ebx
xor esi, edx
neg edx
xor edi, edx
sub edx, edi
mov edi, edx
mov ebx, edx
jmp 0x476a24
mov eax, 4
mov ebx, 0xf9595e29
inc edx
add edi, edx
mov esi, edi
jmp 0x476d7e
add esp, 0x154
add edi, 0xf979eaf1
mov edi, esi
and ebx, 0xf97a6789
or edi, esi
neg edi
xchg edx, edi
bswap edx
xor ebx, edx
mov edi, esi
and esi, edx
and ebx, esi
or edi, edx
xor ebx, esi
xchg edx, esi
xchg edx, esi
xor edx, edi
jmp 0x476f9d
add ecx, dword [esp + 0x128]
xor edx, edi
add edi, ebx
inc edi
add esi, edi
or ebx, esi
or edi, esi
xchg edx, edi
xor esi, 0xf9816d71
not edx
xor ebx, 0xf981ee19
jmp 0x476a9e
movzx ecx, word [ecx]
and edx, edi
shl edx, 0x1a
add esi, edx
add esi, 0xf98e1c0b
xor esi, edi
dec edx
xor edx, esi
inc edi
neg esi
sub edi, ebx
jmp 0x477daf
add ecx, dword [esp + 0xe4]
and ebx, esi
add edi, edx
or edx, ebx
add esi, 0xf99c636b
xor edx, ebx
shr esi, 9
shr esi, 0x10
sub ebx, edi
ror edx, 0x1b
mov ebx, 0xf99df3cd
bswap edx
add edi, edx
jmp 0x4779b8
mov ecx, dword [ecx]
mov edx, ebx
sub esi, 0xf99fcbed
or esi, edx
xor edi, edx
and ebx, 0xf9a0890d
or edx, edi
or esi, edx
sub edx, esi
ror edx, 9
xchg esi, edx
jmp 0x477522
mov ecx, dword [ecx]
and edx, 0xf9aca5e9
xchg esi, edx
nop
mov edx, ebx
dec edx
add esi, edi
and edx, esi
add esi, 0xf9aead6d
shl esi, 0x13
and edi, edx
jmp 0x4770c1
inc dword [esp + 0x18]
add ebx, edi
shl edx, 0x14
sub edi, esi
and esi, edx
rol edi, 0x1d
add ebx, esi
not ebx
sub edx, 0xf9b65c43
and edx, esi
shr esi, 0xf
jmp 0x475af1
ret
mov ecx, dword [ecx]
or esi, edx
sub edi, edx
add ebx, 0xf9bde13b
or esi, 0xf9be2083
add edi, edx
sub edx, edi
not esi
add edx, ebx
and ebx, edx
and ebx, esi
neg edi
and esi, 0xf9c026c1
jmp 0x477823
mov dword [esp + 0x18], eax
add edi, ebx
and ebx, edi
bswap ebx
xor ebx, esi
add esi, edx
xor edx, esi
xchg edi, esi
nop
xchg edi, ebx
and edi, ebx
sub edi, 0xf9c300af
sub edx, 0xf9c34145
jmp 0x47651e
mov ecx, dword [ecx]
sub ebx, 0xf9cd9e9d
or ebx, edx
or ebx, 0xf9ce2dbb
ror ebx, 0x12
jmp 0x47517b
jne 0x47563c
ror ebx, 0xd
sub edx, 0xfa0302e3
xchg edi, ebx
or edi, esi
jmp 0x4774c3
pop ecx
and edx, 0xfa1862a9
ror esi, 0x19
bswap esi
sub esi, edi
xchg ebx, edi
xor ebx, 0xfa199f4f
jmp 0x475c25
mov dword [esp + 0x128], ecx
and esi, edi
add ebx, 0xfa1e38af
and esi, edi
mov esi, 0xfa1eaf67
mov esi, edi
neg edi
sub ebx, esi
xchg esi, edx
xchg ebx, edi
sub edx, 0xfa202225
jmp 0x4768a8
mov ecx, dword [ecx]
mov edi, 0xfa510d87
and edx, esi
shr edi, 0x1c
ror esi, 7
xchg esi, edi
mov ebx, esi
add esi, 0xfa52993d
inc esi
not edi
or edi, edx
xchg ebx, edx
add ebx, edi
neg edi
sub edx, edi
jmp 0x4779f0
add ecx, dword [esp + 0x128]
or ebx, edi
shl edx, 0x17
sub edx, ebx
sub ebx, edx
or esi, edx
shl ebx, 1
rol ebx, 7
not edi
or esi, ebx
rol edx, 5
jmp 0x4784df
add ecx, dword [esp + 0x128]
sub esi, edx
xchg edx, esi
bswap ebx
ror esi, 6
and edi, 0xfa72ecef
or ebx, edx
not esi
xchg edx, esi
rol edx, 9
xor edx, ebx
and edx, esi
xor esi, ebx
not edi
sub edi, edx
jmp 0x477ee7
mov ecx, dword [ecx]
mov esi, ebx
or edx, esi
xchg ebx, esi
sub edx, edi
shr edx, 0x19
or edi, esi
sub esi, ebx
mov edi, ebx
add edx, ebx
neg esi
jmp 0x477d48
mov dword [esp + 0xe4], ecx
not esi
mov edi, 0xfa87fb33
or edi, esi
and ebx, edx
xor edi, esi
shr ebx, 6
jmp 0x477ae9
add dword [esp + 0xe4], eax
or edi, 0xfa8b50ed
add esi, ebx
or edx, 0xfa8bcec3
neg edx
sub ebx, 0xfa8c5077
and ebx, esi
sub edx, esi
shr ebx, 0x16
add edi, edx
bswap ebx
shr esi, 0x10
sub edi, ebx
dec edx
mov ebx, 0xfa8e9a8f
jmp 0x475367
add dword [esp + 0xe4], 0x78
or esi, edi
xchg edi, ebx
and edi, 0xfa9a0c63
sub edi, esi
xchg esi, edi
sub ebx, edi
jmp 0x4764ee
mov dword [esp + 0xe4], ecx
neg esi
sub edi, esi
xor esi, edx
rol esi, 0xf
rol edx, 5
neg esi
and edx, 0xfac7eb0f
or edx, esi
mov ebx, 0xfac87989
neg edx
jmp 0x475bbc
mul ecx
inc esi
add ebx, esi
neg edx
xor edi, edx
jmp 0x477a2e
mov ecx, dword [ecx]
neg esi
mov edx, esi
and ebx, edi
nop
and edx, esi
shl esi, 6
jmp 0x4778d5
mov dword [esp + 0xb8], ecx
not edx
rol ebx, 5
rol ebx, 0xb
and edi, esi
bswap edx
xchg edi, edx
shr ebx, 0xc
xor edi, esi
jmp 0x476f76
push ecx
dec ebx
dec edx
sub esi, ebx
mov edi, esi
shl ebx, 0x1f
ror edi, 0xb
rol esi, 5
and edx, 0xfaf9e06d
bswap esi
add esi, edi
sub esi, edx
sub edx, 0xfafaedbb
jmp 0x475585
mov dword [esp + 0x18], 0
mov esi, 0xfb019649
xor edi, esi
mov esi, 0xfb021565
or edi, 0xfb025517
xor ebx, 0xfb02a6f7
or esi, 0xfb02e643
and ebx, edx
or esi, 0xfb03647f
xchg edi, edx
sub edx, 0xfb03e3db
xor edx, esi
dec edx
jmp 0x4782ee
mov ecx, dword [ecx]
sub ebx, edx
sub edx, ebx
add edx, esi
add esi, edx
xor esi, edi
shl edi, 0x18
and esi, edx
sub edi, 0xfb0ddacd
xor ebx, edx
mov edx, esi
and esi, edi
and ebx, edx
jmp 0x476cc6
mov dword [esp + 0x128], 0
sub ebx, edi
add ebx, 0xfb1b7e01
xchg esi, edi
and edi, 0xfb1bfe2b
and edi, 0xfb1c3ec9
and ebx, edi
and edx, edi
shl edx, 0xe
xor ebx, 0xfb1d4aa9
rol esi, 4
xor edx, 0xfb1dcc4f
mov edi, 0xfb1e6bd1
jmp 0x478490
mov ecx, dword [esp + 0xb8]
or esi, 0xfb1ebc01
xchg edx, esi
mov edx, edi
xchg edi, esi
jmp 0x47694e
mov dword [esp + 0xb8], 0
not edx
add esi, 0xfb2c0795
xor ebx, edi
sub esi, 0xfb2c7f65
ror edi, 0xc
xchg edi, edx
sub esi, ebx
shl ebx, 0x1f
sub esi, edi
sub ebx, esi
neg edi
xor edi, esi
or edx, edi
add edi, 0xfb2ee06b
jmp 0x4781d9
sub esp, 0x154
xor ebx, edi
rol ebx, 0x1d
or edi, esi
shr ebx, 5
mov edi, esi
or edx, ebx
mov edx, 0xfb309ea7
bswap ebx
and ebx, 0xfb31178d
mov ebx, 0xfb3153d1
jmp 0x478079
inc ecx
sub edi, 0xfb3f12f5
sub ebx, edi
and ebx, esi
rol ebx, 1
xor edi, esi
sub esi, edx
rol edx, 8
shr edx, 0xa
add ebx, 0xfb40fb85
and esi, 0xfb41387f
jmp 0x475a44
mov dword [esp + 0xe4], 0
xchg ebx, edx
sub edx, ebx
bswap esi
and ebx, esi
rol ebx, 0x1e
add esi, edx
jmp 0x474f62
mov dword [esp + 0xe4], ecx
sub edx, edi
add esi, edx
and edx, edi
sub esi, ebx
inc ebx
add edi, ebx
and edi, ebx
add esi, edx
jmp 0x47821a