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

Disassembly:
add ecx, 0xc
add ebx, esi
inc edx
xchg ebx, edx
not edx
and edi, 0x3960ec4f
xchg ebx, edi
mov ebx, 0x3961895f
or edx, 0x3961f935
or esi, ebx
and ebx, edx
jmp 0x477668
mov ecx, dword [ecx]
sub edx, 0x3967754f
xor ebx, 0x3967b569
and edx, ebx
shl edx, 0x15
xor edi, edx
xchg ebx, edi
add ebx, edx
sub esi, ebx
xor edx, 0x3969788f
add edx, 0x3969b67f
xor edx, 0x396a64e3
or esi, ebx
neg edx
not ebx
or esi, edx
xchg edx, ebx
jmp 0x477bb2
mov ecx, dword [ecx]
dec ebx
ror edi, 0x18
dec ebx
inc edi
inc edi
add edx, edi
bswap edx
ror edx, 0x11
jmp 0x475cc4
add esp, 0x12c
or edx, 0x3997b1b7
xchg esi, ebx
mov edx, edi
shl ebx, 0x18
ror ebx, 1
neg edi
xor ebx, esi
or esi, ebx
sub esi, 0x3999b5fb
xchg edi, esi
xor edx, 0x399a321b
mov esi, edi
xor edx, 0x399aaded
and esi, edi
sub ebx, esi
xor edx, edi
jmp 0x4776f0
mov ecx, dword [ecx]
add ebx, edi
and edx, esi
xor edi, esi
and esi, edi
shr edx, 0xd
shr ebx, 0x1e
xchg edx, esi
mov esi, edx
and edx, 0x39a04cf7
xor edi, esi
jmp 0x475e92
mov ecx, dword [ecx]
and ebx, edi
inc ebx
neg edx
xchg esi, ebx
and ebx, edi
sub esi, 0x39a85ee7
xchg edi, ebx
sub ebx, 0x39a93273
mov edi, esi
xor edi, esi
add esi, edx
xor edi, 0x39aa6f6b
jmp 0x477436
mov dword [esp + 0x4c], eax
rol edx, 7
sub ebx, 0x39acab03
or esi, ebx
and esi, ebx
sub esi, edx
xor ebx, esi
xor edx, 0x39adf1d9
bswap edi
add ebx, edx
mov esi, edi
jmp 0x476f01
add ecx, 0x3c
add edx, ebx
xor edx, ebx
ror ebx, 6
sub edx, edi
xchg esi, ebx
sub edx, 0x39b03355
or ebx, edx
mov esi, 0x39b12689
or edx, 0x39b195d3
xor ebx, esi
jmp 0x477d76
mov ecx, dword [esp + 0xd4]
mov ebx, esi
sub ebx, edi
and esi, 0x39c7749f
sub ebx, edx
nop
mov edi, 0x39c83d27
xor esi, edi
add ebx, edi
or esi, edi
ror edi, 3
jmp 0x477e91
mov ecx, dword [esp + 0xd4]
xor ebx, 0x39d315e7
xchg edi, ebx
shr esi, 7
xor esi, edx
shr edi, 8
inc esi
jmp 0x475630
mov dword [esp + 0xd4], ecx
and edx, esi
or ebx, edi
xor esi, 0x39db141d
inc edx
or ebx, 0x39db94a5
mov edi, esi
neg edx
bswap esi
add edi, 0x39dca075
and ebx, edx
inc esi
inc edi
ror ebx, 0x15
add esi, edi
jmp 0x476804
add dword [esp + 0xd4], eax
mov ebx, esi
sub ebx, edx
add ebx, 0x39dff3bb
xor edx, 0x39e03225
mov esi, edx
inc ebx
jmp 0x477ed1
add ecx, 0x18
or esi, 0x39e6c371
xchg edx, edi
add esi, edi
xor edx, edi
ror esi, 1
inc edi
inc edi
xchg ebx, esi
xor edi, ebx
and edi, esi
jmp 0x47637e
cmp byte [ecx], 0
jmp 0x47650f
mov eax, 4
mov edi, esi
or edi, edx
add esi, edi
mov esi, 0x3a043dd7
xchg ebx, esi
shr esi, 4
sub edi, 0x3a04fb0d
sub esi, ebx
or edx, edi
mov edx, esi
jmp 0x476fb1
add dword [esp + 0xd4], 0x20
ror edx, 0x1d
inc esi
xor esi, edi
neg esi
xor edi, edx
xor edi, esi
mov edi, edx
mov esi, ebx
and esi, 0x3a0de607
not edx
jmp 0x4758f9
inc ecx
add edi, edx
and edx, esi
sub edi, 0x3a1112c7
add edi, esi
xor esi, 0x3a119ec3
and ebx, edx
xor ebx, edi
ror edx, 0xe
jmp 0x475a67
mov dword [esp + 0xd4], ecx
shl edi, 0x14
xchg esi, edi
shr edx, 0x1b
xor ebx, esi
bswap esi
shl edx, 0x1d
jmp 0x475e63
mov dword [esp + 0x110], 0
and edi, edx
mov esi, edx
shl esi, 0xd
sub edi, esi
xor edi, edx
and edi, edx
and esi, edx
rol esi, 0x10
jmp 0x476847
add dword [esp + 0x110], 4
or ebx, edi
sub ebx, esi
and edi, edx
shr edi, 0x1f
jmp 0x4768b1
mov ecx, dword [esp + 0x44]
dec esi
add edi, ebx
or edx, edi
xor ebx, edi
xchg ebx, edx
xor edx, esi
or ebx, esi
or esi, 0x3a9d4d09
xchg ebx, edi
xchg edx, ebx
add edi, 0x3a9f5c6f
xor ebx, 0x3aa08433
jmp 0x476489
add ecx, dword [esp + 0x44]
xor edi, ebx
xchg edx, ebx
sub edi, esi
add ebx, edi
inc edi
bswap edi
shr edx, 0x11
not ebx
xor edx, ebx
bswap edi
jmp 0x476438
add dword [esp + 0xd4], 0x78
and edi, edx
bswap esi
sub ebx, 0x3ab19871
or edi, 0x3ab2c56f
inc edi
mov ebx, esi
xor edi, edx
shl edx, 0x12
jmp 0x475f16
mov eax, 2
bswap edi
add esi, 0x3ab7f1bb
mov edi, edx
shr esi, 0x13
xor edx, ebx
xor ebx, 0x3abb0f7d
jmp 0x476303
mov ecx, dword [esp + 0x44]
xor edx, ebx
or edi, ebx
sub edi, 0x3abd7f19
and ebx, edi
and edx, edi
and edi, ebx
shl edx, 4
sub edi, edx
sub esi, 0x3ac2ae6f
mov ebx, edx
or esi, 0x3ac45c87
and esi, edx
jmp 0x476d35
add dword [esp + 0xd4], 4
and esi, 0x3ad72e01
bswap esi
add ebx, edx
xor ebx, 0x3ad916c9
and edi, edx
xor edi, ebx
shr edx, 1
shr edi, 8
add esi, edi
xor edx, edi
jmp 0x475856
mov ecx, dword [ecx]
xchg ebx, edi
and esi, edi
add edx, ebx
not esi
dec ebx
xor edi, edx
dec edx
and esi, edx
xchg ebx, edx
sub ebx, edi
or ebx, edx
add edx, edi
jmp 0x4759fd
cmp eax, dword [esp + 0x60]
jmp 0x476820
inc dword [esp + 0x4c]
mov edi, esi
rol edi, 5
inc esi
not edx
mov esi, ebx
rol edi, 0xf
or edx, ebx
shl esi, 0x15
and ebx, esi
add esi, ebx
jmp 0x475dc9
xor eax, eax
not edi
mov esi, 0x3b81392b
bswap edi
add esi, ebx
add edi, esi
or edx, esi
or edx, edi
sub ebx, 0x3b85d213
sub esi, ebx
sub esi, edx
jmp 0x478039
mov ecx, dword [esp + 0x4c]
sub ebx, edi
or edi, 0x3b9b5ab7
sub edx, 0x3b9bc2cf
or edx, edi
mov esi, ebx
bswap ebx
and edi, esi
add edi, esi
xchg esi, ebx
add ebx, esi
shl esi, 0x1e
add edi, ebx
ror edi, 0x1d
or edx, 0x3ba0d08d
jmp 0x477d95
mov ecx, dword [ecx]
bswap edi
or edi, edx
xchg ebx, edi
or edi, ebx
or ebx, esi
sub ebx, edi
jmp 0x477c0f
mov dword [esp + 0x110], ecx
or edx, ebx
shr edx, 6
mov ebx, esi
dec edi
xor esi, edx
or ebx, esi
xchg ebx, edx
add ebx, edi
sub edx, ebx
and edi, esi
jmp 0x47622a
add dword [esp + 0xd4], ecx
sub edx, 0x3bcee411
or ebx, edi
mov edx, edi
rol edi, 0x1b
sub edi, esi
sub ebx, edx
not edi
xor edi, ebx
jmp 0x475bbd
mul ecx
xchg edi, esi
neg edx
mov edi, 0x3bd70a8d
mov ebx, edi
or ebx, edx
bswap ebx
or ebx, esi
or ebx, esi
jmp 0x475993
jne 0x478039
sub edx, edi
and edx, 0x3bdff90d
rol esi, 9
mov edx, esi
shl ebx, 0x1d
neg ebx
rol ebx, 1
or edx, 0x3be28159
jmp 0x4775d4
add ecx, dword [esp + 0x4c]
bswap esi
mov edi, 0x3beec84b
mov esi, ebx
or edi, ebx
or esi, edx
and esi, edx
add ebx, edx
mov edi, ebx
mov ebx, esi
xor ebx, 0x3bf204a9
or edi, ebx
xchg edi, ebx
shr esi, 0x1a
inc edi
jmp 0x475b5b
mov ecx, dword [ecx]
xchg esi, edi
sub edi, edx
shl ebx, 1
sub esi, 0x3c26c435
xchg ebx, edx
sub esi, edx
dec ebx
add edi, edx
jmp 0x47679f
add ecx, dword [esp + 0x44]
xor ebx, 0x3c3722df
mov ebx, 0x3c37893b
shl ebx, 0x18
xor edx, 0x3c387543
xchg esi, ebx
add ebx, esi
jmp 0x477e0b
mov ecx, dword [esp + 0x110]
mov edi, esi
xchg edx, edi
xor esi, edx
and edx, edi
neg ebx
dec esi
shr edi, 0x1f
mov edx, edi
jmp 0x476593
jne 0x47622a
dec ebx
add esi, edx
and esi, edx
rol esi, 0x11
xor edx, 0x3c4a3879
inc edx
rol esi, 0x17
mov ebx, edx
and ebx, 0x3c4bd487
xor edi, esi
jmp 0x475f91
mov dword [esp + 0x44], 0
mov esi, 0x3c4cc34b
xor ebx, 0x3c4d2b75
shr ebx, 0x1e
and edx, 0x3c4dfc01
and edi, ebx
and edx, 0x3c4ec799
mov ebx, 0x3c4f2e07
xor edx, edi
xchg edi, esi
or ebx, 0x3c50e4bf
jmp 0x47705e
mov ecx, dword [esp + 0x110]
shl edx, 0x17
add edx, esi
xor edi, edx
or ebx, 0x3c58148b
mov esi, edi
ror edx, 0xb
jmp 0x476729
rol eax, 8
or edi, edx
bswap edx
or edi, edx
and edx, 0x3c7ec64f
sub esi, 0x3c7f2e6b
xchg edx, edi
mov esi, edi
bswap esi
sub edx, edi
xor edx, 0x3c814913
or edi, 0x3c81b1f5
and edi, ebx
jmp 0x475c07
mov ecx, dword [esp + 0x44]
sub edx, 0x3c9be8eb
mov edi, 0x3c9c5187
add edi, 0x3c9cb8e5
rol ebx, 0x18
ror edx, 3
xor ebx, esi
add edi, edx
ror ebx, 0x1d
shl edx, 0xd
shl edi, 0x16
add esi, 0x3ca010a3
shl edx, 5
jmp 0x475717
add ecx, dword [esp + 0xd4]
or edx, ebx
shl edi, 0xf
xchg ebx, esi
and edx, edi
mov edx, ebx
sub edx, esi
and edx, ebx
or edi, 0x3ce7cefb
rol edi, 0x15
inc ebx
neg edi
and esi, edi
jmp 0x475414
mov ecx, dword [esp + 0xd4]
shr edx, 0x17
shl ebx, 0x18
not edx
or ebx, esi
inc ebx
or ebx, edx
jmp 0x475359
sub dword [esp + 0xd4], 8
xor esi, edi
sub edi, esi
sub esi, 0x3d0fe903
xor edi, ebx
add ebx, edi
sub esi, ebx
or edi, 0x3d110ead
add edx, esi
or ebx, edx
or edi, 0x3d11db8f
shr edi, 7
mov edi, ebx
jmp 0x476eba
movzx ecx, word [ecx]
sub esi, ebx
mov edi, esi
xchg edx, ebx
sub esi, ebx
xchg edi, esi
ror esi, 0xf
jmp 0x4764c8
add ecx, dword [esp + 0x44]
add ebx, edi
and ebx, edi
xchg esi, edi
mov edx, esi
shr ebx, 0x1e
or edx, edi
bswap edx
xor esi, ebx
add ebx, 0x3d224cbb
nop
or edi, esi
xchg esi, edi
jmp 0x476fee
mov dword [esp + 0x110], ecx
sub edx, ebx
or edx, 0x3d23c1df
and edi, 0x3d240711
inc edx
or edx, ebx
xchg edi, ebx
xor esi, edi
add ebx, edx
mov esi, ebx
shr edx, 0x10
jmp 0x475ef7
mov dword [esp + 0xd4], 0
or edx, ebx
shl esi, 0x1d
rol edx, 0x18
mov edx, ebx
sub ebx, 0x3d2f01ad
dec ebx
dec edx
or edi, esi
xor edi, ebx
xor edx, 0x3d30af2d
jmp 0x477271
mov ecx, dword [ecx]
xor edi, 0x3d467e9f
inc edx
add ebx, esi
shl ebx, 0x12
mov edx, edi
or ebx, edi
shr edi, 0xe
ror esi, 2
mov edx, 0x3d48ba35
and edi, ebx
jmp 0x47602c
mov dword [esp + 0x60], ecx
and edx, edi
sub edi, 0x3d5b673f
or ebx, edi
mov esi, edi
or edi, esi
and ebx, edi
add esi, ebx
ror esi, 0x1e
sub edi, esi
xchg ebx, esi
jmp 0x4774e9
add ecx, dword [esp + 0x44]
sub edi, ebx
shl esi, 0xb
or edx, ebx
add ebx, esi
neg ebx
xor esi, ebx
add edx, esi
sub ebx, edi
xor edx, esi
add esi, ebx
sub edx, esi
inc esi
and edi, ebx
or edx, ebx
or edi, esi
xor edx, edi
jmp 0x4755cc
mov ecx, 0x30
or esi, edx
xor edi, esi
or edi, 0x3d90fc57
mov edi, edx
xor ebx, edx
and ebx, edx
xor edi, edx
sub ebx, edx
add esi, 0x3d9318f1
rol esi, 0x19
jmp 0x477b8f
pop ecx
and edi, ebx
and edx, 0x3da5bf4f
xchg ebx, edi
shr edx, 0x18
sub edx, ebx
or ebx, edx
sub edi, 0x3da796af
add edi, edx
and esi, 0x3da83257
sub esi, 0x3da879e3
jmp 0x476049
mov dword [esp + 0x4c], 0
shr edx, 0xe
rol esi, 0x18
and ebx, 0x3daeacb3
xchg edi, esi
and edx, ebx
bswap ebx
xor esi, edx
ror edi, 6
xor ebx, esi
rol ebx, 8
jmp 0x475da7
mov ecx, dword [ecx]
add edi, ebx
xchg edx, esi
xor edx, esi
xchg edx, esi
add edx, 0x3db2ffcd
xor esi, edi
jmp 0x4779bb
ret
add ecx, 0xc
and edx, 0x3dff1451
and edi, edx
add esi, 0x3dffff0f
xchg ebx, edi
neg edi
not edx
inc edi
add edi, esi
xor edx, 0x3e01a497
inc edx
jmp 0x477e5a
mov dword [esp + 0xd4], ecx
shr ebx, 0x1a
xchg esi, ebx
ror edx, 0x18
and edi, ebx
sub edi, ebx
inc edx
or edi, ebx
rol edi, 0xd
jmp 0x475ed2
mov ecx, dword fs:[ecx]
and ebx, edx
mov esi, 0x3e2bf95d
or ebx, 0x3e2c40f1
add esi, edx
bswap ebx
sub edi, ebx
inc edx
mov edi, edx
ror ebx, 0x15
and ebx, edx
jmp 0x475311
add ecx, dword [esp + 0x44]
xor edi, ebx
xor ebx, edi
rol edx, 0x11
bswap esi
sub edi, esi
neg edi
xor esi, edx
or edi, esi
add edx, esi
inc ebx
inc edi
mov edx, 0x3e321bcd
mov edi, esi
shr esi, 0x1f
jmp 0x475961
mov dword [esp + 0x44], ecx
xor esi, edi
mov esi, ebx
mov edx, ebx
xor edx, 0x3e39b3a3
xchg edx, esi
sub edx, edi
and esi, ebx
or edx, esi
mov edx, esi
sub ebx, edx
xor ebx, edi
sub ebx, edx
jmp 0x476aed
mov ecx, dword [ecx]
xor edx, ebx
mov ebx, 0x3e57b73d
and edx, ebx
sub edi, ebx
or edi, esi
ror edi, 0x18
xor esi, ebx
xchg edx, esi
sub esi, edx
and edi, esi
jmp 0x477a22
mul ecx
mov edi, 0x3e5a087d
or ebx, 0x3e5a488f
add edx, esi
not edi
and ebx, 0x3e5b0241
or edx, 0x3e5b417b
dec edx
and edi, 0x3e5bc285
xor edx, edi
shr esi, 0x14
neg esi
add ebx, edx
and esi, edx
xchg edx, ebx
jmp 0x4756ee
push ecx
add esi, edi
and esi, ebx
ror ebx, 0x18
shl edi, 0x18
or edx, 0x3e640a41
sub edi, ebx
sub esi, ebx
mov edi, ebx
not edi
dec esi
xor edi, esi
xor ebx, 0x3e65cd21
jmp 0x476292
mov ecx, dword [ecx]
add edi, ebx
shr ebx, 0xd
add ebx, edx
add edx, ebx
inc ebx
inc esi
jmp 0x47718d
mov ecx, dword [ecx]
add edx, edi
add esi, edx
not ebx
sub esi, edx
sub ebx, 0x3e6f1187
add esi, edi
add edi, edx
mov esi, edi
mov ebx, esi
bswap edi
and edi, ebx
sub edx, esi
jmp 0x476fc6
mov ecx, dword [esp + 0xd4]
or edx, ebx
sub edi, edx
and esi, edx
xchg ebx, esi
jmp 0x4756a7
xor al, byte [ecx]
or edx, ebx
xchg edx, ebx
xchg edx, esi
and ebx, edi
and edi, edx
shr ebx, 0xb
sub edi, ebx
xor edi, ebx
and edx, edi
xor ebx, edx
mov ebx, esi
xor edx, 0x3e928665
add edi, esi
add esi, edx
or ebx, esi
bswap edi
jmp 0x4769fc
sub esp, 0x12c
xor ebx, 0x3e99e29f
mov edi, edx
neg ebx
xchg edi, edx
and edx, esi
or ebx, esi
xchg ebx, esi
add ebx, edi
xor edx, edi
and edi, edx
jmp 0x47763c