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

Disassembly:
mov dword [esp + 0x7c], ebx
dec edi
inc esi
xchg edi, edx
or edx, edi
ror edi, 4
bswap ecx
sub ecx, edi
sub edi, edx
dec esi
sub edi, edx
or ecx, edx
jmp 0x4a0cf1
add ebx, dword [esp + 0x30]
mov edi, ecx
rol edx, 7
add ecx, edi
mov edx, 0x1f7da3f6
and edx, esi
dec edi
and esi, ecx
inc edi
or ecx, edx
or ecx, esi
inc edx
jmp 0x4a3bf7
mov ebx, dword [ebx]
or esi, edi
mov ecx, edx
xor edx, 0x1f831365
sub edx, ecx
shr esi, 0x1b
xchg ecx, edx
xor edi, ecx
sub edi, edx
or ecx, esi
or edi, esi
mov ecx, edx
and ecx, esi
dec edx
xor esi, ecx
mov edx, edi
jmp 0x4a3fb8
mov ebx, dword [ebx]
or edi, 0x1f91ba3c
or edi, esi
sub edx, 0x1f92bc9e
rol edi, 6
xor edi, esi
xor edi, ecx
and edx, 0x1f94e03b
or edi, 0x1f9569b9
or edi, esi
and ecx, edi
or edi, ecx
shr esi, 2
add ecx, edi
xor edi, 0x1f98a3e1
jmp 0x4a101f
xor eax, eax
sub edx, esi
ror esi, 0x15
mov ecx, edi
bswap esi
not edi
sub edi, edx
mov edi, ecx
jmp 0x4a1ce8
mov dword [esp + 0x30], eax
add edi, edx
dec edi
neg edx
or edx, 0x1ff8606a
not esi
add edi, edx
jmp 0x4a3c34
add ebx, 0x3c
dec esi
xchg edx, ecx
xor ecx, 0x201eb335
xor edi, ecx
xchg esi, edx
add esi, edx
and edx, ecx
and esi, edx
neg edi
xchg edx, ecx
ror ecx, 9
or edi, 0x20227bf3
sub edx, edi
xor edx, ecx
jmp 0x4a2f4c
add ebx, dword [esp + 8]
add edx, ecx
add esi, 0x2031070d
add esi, 0x20316d76
neg edi
or esi, 0x2032594c
and ecx, edx
xchg edi, ecx
mov esi, edx
jmp 0x4a0c6b
mov ebx, dword [esp + 8]
shr esi, 0x19
mov edx, ecx
sub esi, edi
add edx, 0x204db04c
sub esi, ecx
xor ecx, edi
or edi, esi
neg ecx
and edi, edx
xchg edi, esi
or edi, esi
rol edi, 1
sub ecx, 0x2051df1c
xor edi, edx
xchg esi, edx
jmp 0x4a1d02
mov ebx, dword [ebx]
inc ecx
and edx, ecx
shl edi, 9
sub edx, edi
sub esi, ecx
mov esi, edi
jmp 0x4a2e7e
mov ebx, 0x30
mov edx, ecx
mov edi, ecx
and ecx, edi
or edi, 0x207bb36c
xor esi, 0x207c1fd1
dec edi
xor esi, 0x207d0561
or edi, edx
xor esi, edi
and edx, esi
jmp 0x4a3e81
add dword [esp + 4], 4
and edi, edx
and ecx, edi
xor esi, 0x2091a031
sub ecx, edx
sub esi, 0x2094227f
mov esi, edi
rol esi, 0x10
jmp 0x4a0fbe
add ebx, 0xc
shl esi, 0xc
shl ecx, 0x11
shl esi, 5
bswap edx
sub esi, 0x20ada915
mov edi, ecx
sub edx, 0x20ae8d4e
or edx, edi
inc edx
mov edx, 0x20afd3dc
sub edx, esi
jmp 0x4a1354
rol eax, 8
sub esi, 0x20b0c649
and edi, ecx
dec esi
xchg edx, edi
mov edi, ecx
inc ecx
mov esi, ecx
dec esi
or edx, ecx
jmp 0x4a215d
mov ebx, dword [esp + 4]
or esi, 0x20d9ed2b
mov edx, esi
xchg ecx, edi
inc edi
nop
jmp 0x4a10ac
mov dword [esp + 0x78], ebx
or edx, ecx
sub edi, ecx
add ecx, 0x20e6e9af
inc esi
and esi, ecx
rol esi, 4
jmp 0x4a1f28
mov ebx, dword [ebx]
rol edx, 0x1a
sub edx, edi
or edi, 0x20f9115f
xor esi, 0x20f97dd7
or esi, edx
xchg edx, edi
and ecx, 0x20fac20f
and edi, edx
inc edi
mov edx, esi
dec ecx
or edi, esi
xchg ecx, esi
jmp 0x4a12bf
mov eax, 2
sub edi, ecx
and edi, esi
rol esi, 0x12
ror edx, 0xa
sub edx, esi
neg ecx
mov edx, edi
mov ecx, esi
jmp 0x4a1b55
add ebx, dword [esp + 0x78]
neg edx
sub edx, ecx
add esi, edi
xchg ecx, edi
and esi, edx
neg esi
and edi, 0x213c3057
or edx, ecx
xor ecx, edx
xchg edx, ecx
inc edx
and edi, esi
shl esi, 0x16
xor edx, edi
jmp 0x4a2334
mov ebx, dword [ebx]
sub ecx, 0x214e33a6
or edi, edx
or edi, 0x214f18e0
mov edx, 0x214f843b
rol edx, 0x12
bswap esi
or edi, edx
jmp 0x4a207c
add ebx, 0xc
and esi, ecx
xor ecx, edi
mov edx, ecx
or edi, esi
mov edx, edi
xor esi, ecx
add esi, edx
or esi, ecx
jmp 0x4a1caa
mov ebx, dword [ebx]
bswap edx
add esi, 0x2191b735
sub esi, 0x21922047
and edx, ecx
not esi
add edi, 0x21937073
shr esi, 0xb
add ecx, 0x21944ac5
mov edi, edx
xchg edi, esi
nop
and edx, 0x2195f06a
jmp 0x4a2ccf
add dword [esp + 8], 0x78
dec ecx
bswap edx
and ecx, esi
bswap ecx
ror edi, 9
shr ecx, 9
xchg esi, edx
rol edi, 0xc
jmp 0x4a1aba
mov ebx, dword [esp + 0x78]
or edi, 0x2248a961
xchg edi, esi
and ecx, 0x2249d75e
mov esi, 0x224a4b50
add edx, edi
jmp 0x4a0ab1
mov ebx, dword [esp + 8]
mov edx, 0x2256b0e2
add edx, edi
or edx, ecx
or edi, esi
and edi, 0x2258967c
or ecx, 0x22590b5e
xchg ecx, edx
add esi, edx
or edx, ecx
jmp 0x4a2004
mov ebx, dword [esp + 0x30]
and ecx, 0x225d33e6
mov edx, edi
xchg edi, edx
add ecx, edi
sub esi, edx
mov ecx, esi
mov ecx, esi
xor edx, esi
and esi, edi
jmp 0x4a3b8e
mov ebx, dword [ebx]
add ecx, esi
sub ecx, edx
xchg ecx, edx
mov esi, edx
inc esi
or edi, ecx
sub ecx, edx
sub edi, 0x2292d8f9
xchg edi, edx
xchg esi, edx
mov edx, edi
mov ecx, edi
add edi, 0x229557da
jmp 0x4a0e97
xor al, byte [ebx]
sub edx, esi
and ecx, esi
xchg ecx, edi
dec edx
sub edx, 0x2299e12c
xor edi, 0x229a52f6
jmp 0x4a0ec2
mov ebx, dword [ebx]
sub ecx, edx
not ecx
mov edi, esi
add esi, ecx
add edi, esi
bswap edi
or edi, edx
add edx, ecx
jmp 0x4a2af9
add dword [esp + 8], 0x20
add ecx, edi
sub esi, 0x22a2daa6
mov esi, edx
ror edx, 0x15
shl edx, 0xb
or ecx, 0x22a4bc8c
xor edi, esi
dec ecx
xchg edx, esi
mov edx, esi
xchg ecx, edi
jmp 0x4a1b18
mov ebx, dword [esp + 0x78]
or ecx, edx
dec edx
or ecx, edx
sub esi, edi
add edx, ecx
add edx, 0x22ee8bbd
jmp 0x4a0a25
mov ebx, dword [ebx]
xchg esi, edx
neg esi
sub ecx, esi
or ecx, esi
shl esi, 0x1e
not esi
sub edi, edx
neg esi
jmp 0x4a21fe
mov ebx, dword [ebx]
and edx, edi
ror edx, 0x17
add esi, 0x234ee82f
neg esi
sub edi, esi
mov ecx, 0x23521dd0
and esi, edi
dec edx
or edx, ecx
xor esi, ecx
rol ecx, 8
xor esi, edi
or esi, edx
jmp 0x4a156e
inc ebx
and ecx, 0x23798560
or ecx, edx
or esi, edi
add edi, ecx
xor edx, ecx
mov edi, esi
inc edx
and esi, edx
sub esi, ecx
jmp 0x4a282b
mov ebx, dword [esp + 8]
and edx, edi
add edx, 0x23895c8e
and esi, 0x238a018f
and edi, edx
add ecx, edi
xor edi, ecx
and esi, 0x238c55a9
add esi, ecx
xchg edx, ecx
and edi, edx
and edx, ecx
not edi
add esi, 0x238fcdbf
rol esi, 3
jmp 0x4a058c
add ebx, dword [esp + 0x78]
xor esi, edi
sub edx, esi
xchg edx, esi
bswap edi
sub esi, edx
shl edx, 0xc
xor edx, edi
or edx, edi
shr ecx, 0xb
xchg esi, ecx
jmp 0x4a37d4
mov ebx, dword [esp + 8]
and edx, edi
xor esi, 0x23b5ba30
sub edx, edi
xchg esi, ecx
sub esi, 0x23b8741a
shl ecx, 0x12
add esi, edx
xor edx, edi
mov edx, esi
sub edi, edx
inc ecx
xor edi, ecx
jmp 0x4a26da
push ebx
xor ecx, edi
not edi
xchg esi, ecx
and edx, edi
and edx, ecx
dec ecx
mov edi, 0x23f17e17
or edi, edx
dec ecx
jmp 0x4a08a5
mov dword [esp + 4], 0
ror ecx, 0xf
add ecx, edi
xor edx, esi
inc edi
jmp 0x4a32a4
mov dword [esp + 4], ebx
mov ecx, esi
mov edi, esi
sub edi, 0x249b4631
xchg edx, edi
jmp 0x4a11d5
inc dword [esp + 0x30]
and esi, 0x24a63d35
or edx, esi
and ecx, 0x24a757c8
and edi, ecx
or esi, edi
xchg edx, ecx
sub ecx, edx
add ecx, esi
bswap esi
and esi, edx
jmp 0x4a0db5
mov ebx, dword [ebx]
shr esi, 0x1b
not esi
xchg ecx, edx
and esi, edi
sub edx, ecx
or edi, edx
and esi, 0x24d97622
and edx, ecx
mov esi, edi
or edx, 0x24db1501
xor esi, 0x24db8479
xor esi, edx
or ecx, esi
not edx
sub edi, esi
jmp 0x4a30e4
cmp byte [ebx], 0
jmp 0x4a2fd0
add dword [esp + 8], eax
and edx, ecx
or esi, edx
xchg ecx, edx
mov edx, 0x25368b98
sub edi, edx
and edi, esi
or ecx, edi
jmp 0x4a2281
add ebx, dword [esp + 0x78]
bswap esi
rol edi, 0xf
mov edi, ecx
add edx, edi
sub edx, esi
add ecx, edi
not ecx
ror ecx, 8
jmp 0x4a25be
add dword [esp + 8], 4
or ecx, edx
sub edx, ecx
ror esi, 0x12
dec edi
dec edx
not edx
xor edi, ecx
sub ecx, 0x2629b942
or edi, esi
and ecx, esi
ror edx, 0x14
xor esi, edx
xor edx, 0x262be605
shr ecx, 0xd
xchg edx, edi
sub esi, edi
jmp 0x4a0b90
mov dword [esp + 8], ebx
inc esi
not edi
sub ecx, 0x26512616
or esi, edi
add edi, esi
mov edx, ecx
and ecx, edi
jmp 0x4a19f6
add ebx, 0x18
add edx, ecx
inc edi
or ecx, 0x265bdeeb
mov esi, edx
sub edi, esi
or edx, ecx
neg esi
sub esi, 0x265e00b0
and esi, ecx
jmp 0x4a05e7
cmp eax, dword [esp + 0x7c]
jmp 0x4a2d4d
ret
jne 0x4a2633
mov ecx, edx
and edi, esi
shr ecx, 4
mov esi, 0x266bba6e
not edi
shl esi, 0x1f
add edx, esi
and ecx, edi
ror edi, 0x1e
xchg edi, ecx
jmp 0x4a2b17
mov dword [esp + 8], ebx
ror edx, 0xd
sub edi, edx
xor ecx, esi
mov edi, edx
bswap ecx
rol ecx, 9
mov edi, ecx
bswap edx
not edi
sub esi, 0x2693ee74
sub esi, edx
xchg esi, edx
xchg edx, ecx
jmp 0x4a3a97
add esp, 0x8c
or edi, esi
mov edx, 0x2696198c
add edx, edi
xchg esi, ecx
mov esi, edi
inc edi
mov esi, edi
xchg ecx, edx
and ecx, esi
shl ecx, 0x19
jmp 0x4a2d23
mov ebx, dword [ebx]
add esi, 0x26abcf1e
ror ecx, 4
and esi, edx
mov esi, 0x26ad0fcb
add edi, esi
sub ecx, 0x26ade201
or edx, 0x26ae4edc
and esi, edi
neg ecx
jmp 0x4a2c70
jne 0x4a1ce8
mov edi, 0x26bc15ec
xor edi, edx
dec edx
xor ecx, edx
xor edx, ecx
xchg esi, ecx
add esi, ecx
inc ecx
xchg edi, edx
jmp 0x4a3405
add dword [esp + 8], ebx
add edi, esi
sub ecx, esi
sub ecx, edi
xor esi, ecx
mov edx, 0x26d1fae6
not edx
add ecx, 0x26d2fc08
or edi, edx
add ecx, edx
shr esi, 0xd
xor edi, edx
xor edi, edx
and edx, ecx
xchg esi, ecx
mov ecx, edx
jmp 0x4a1d3b
add ebx, dword [esp + 0x78]
and edi, ecx
rol esi, 3
xchg esi, edx
shl ecx, 0xb
inc edi
add edi, ecx
add edx, 0x26e0e3b8
shr esi, 5
jmp 0x4a2eaa
mov ebx, dword [esp + 4]
dec ecx
add edx, edi
mov edi, ecx
ror ecx, 0x1a
add ecx, edi
jmp 0x4a0569
mov dword [esp + 0x78], 0
mov edi, 0x2716c7e7
xor edi, ecx
dec esi
xor esi, ecx
xor ecx, edi
or edi, ecx
jmp 0x4a3709
movzx ebx, word [ebx]
and esi, ecx
shl ecx, 9
sub edi, ecx
and esi, 0x27258856
xor edx, edi
neg edx
ror ecx, 9
and edi, 0x2728cec6
add edi, edx
jmp 0x4a3d6b
pop ebx
xchg esi, edx
sub esi, edi
neg esi
inc edi
xor esi, 0x274a0a9d
jmp 0x4a2d17
mov dword [esp + 8], 0
sub edi, esi
sub edi, ecx
sub esi, ecx
or ecx, edi
sub edx, esi
shl ecx, 0x1a
mov edi, esi
add edx, 0x27af5d09
mov ecx, esi
xor ecx, 0x27b0322a
add ecx, esi
jmp 0x4a0509
mov dword [esp + 4], ebx
xor edx, esi
or ecx, esi
neg edx
and esi, 0x27c6e0b5
shl edx, 0x13
xor edx, edi
mov edx, esi
jmp 0x4a2633
sub esp, 0x8c
neg edx
or esi, edx
inc edx
add edi, 0x27fa50ab
mov esi, edx
sub edx, 0x27fb5fa4
nop
mov edi, 0x27fc9414
mov edx, edi
xor edx, esi
dec ecx
jmp 0x4a3cbc
mov dword [esp + 8], ebx
sub esi, 0x28148e8e
neg edx
mov edx, esi
or edx, ecx
and edi, 0x2816767b
or esi, ecx
shl edx, 0xa
xchg ecx, edi
sub ecx, edx
ror ecx, 0x15
xor ecx, 0x2819812c
jmp 0x4a312a
mov ebx, dword [esp + 0x78]
and esi, 0x282ac994
shr edi, 0x19
rol ecx, 0x17
xor ecx, edx
xor esi, ecx
add edi, 0x282d0717
or edx, edi
shl edx, 0xd
shl edi, 0x15
jmp 0x4a3070
mul ebx
or ecx, 0x284dea76
xchg esi, ecx
neg edi
ror edi, 0xe
sub edi, ecx
xor edx, ecx
jmp 0x4a08ee
mov eax, 4
xor edi, 0x285c4687
xor ecx, edx
shr ecx, 0xa
sub ecx, esi
or edx, edi
or edi, edx
xchg esi, edx
add edi, esi
mov esi, ecx
or edi, esi
jmp 0x4a3318
sub dword [esp + 8], 8
sub edx, edi
xor edi, edx
shl edi, 0xb
neg edx
inc edi
sub edx, edi
bswap esi
add edx, edi
ror esi, 4
xor esi, edi
jmp 0x4a21b1
mov dword [esp + 0x30], 0
xchg ecx, esi
mov esi, 0x2875ecef
add edi, 0x28765f86
jmp 0x4a24ce
mul ebx
xor edi, ecx
mov edx, esi
xor ecx, esi
mov esi, 0x288c9491
xor edx, ecx
or esi, edx
mov ecx, esi
shr ecx, 0x17
add edx, esi
mov edi, ecx
xchg edi, esi
shr edi, 0x1b
jmp 0x4a2859
mov ebx, dword fs:[ebx]
inc edx
add ecx, edi
mov ecx, edx
add esi, edi
xchg esi, edi
xor ecx, 0x28b2a23a
mov edi, ecx
xor esi, edx
ror esi, 0xf
jmp 0x4a14d0
add ebx, dword [esp + 0x78]
add edi, 0x28e7dd64
sub edi, ecx
mov edx, edi
xchg edx, esi
add edi, 0x28e9fdae
mov esi, 0x28eaa11a
rol edi, 0xd
xor edi, edx
xchg esi, ecx
xchg esi, ecx
bswap edi
and edi, 0x28ed79ef
ror ecx, 0x1e
jmp 0x4a39e8