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

Disassembly:
mov dword [esp + 0xc4], ecx
xor esi, 0x808ed67a
xor esi, edx
dec edi
add edx, esi
or edx, esi
sub edx, edi
mov edi, ebx
shl ebx, 0x15
and ebx, esi
xchg edx, ebx
shr ebx, 9
jmp 0x46b659
add dword [esp + 0x100], eax
xor edi, esi
ror ebx, 0x1d
add ebx, esi
or edx, 0x8097431c
and ebx, 0x80977f0a
jmp 0x46bb22
add esp, 0x160
mov esi, edx
rol edi, 5
sub ebx, esi
or esi, edx
xor edx, edi
ror esi, 0x18
or ebx, esi
jmp 0x46c084
mov dword [esp + 0xf8], eax
add edi, ebx
xor edi, esi
add esi, 0x80b07a57
add edi, ebx
mov ebx, edi
add ebx, 0x80b12638
xchg esi, ebx
jmp 0x46b865
rol eax, 8
and ebx, edi
ror edi, 0x18
or ebx, edi
and edi, edx
mov ebx, edi
and ebx, edx
add edi, ebx
and ebx, esi
and edx, esi
jmp 0x46aeea
add ecx, dword [esp + 0xc4]
xor ebx, edx
neg esi
inc esi
xor edx, edi
or esi, edx
xor ebx, edi
add ebx, edi
dec edi
or edi, esi
xor esi, ebx
neg esi
jmp 0x46bd41
add ecx, dword [esp + 0xc4]
inc edi
xchg edi, ebx
add esi, ebx
xchg ebx, edi
dec esi
and edx, 0x80c7b175
xchg edi, edx
and edx, esi
jmp 0x46bbea
mov ecx, dword [ecx]
shl edx, 5
sub esi, 0x80d9390e
mov edx, 0x80d97260
dec edi
mov edx, esi
shl esi, 0xf
add esi, 0x80da664a
mov edx, 0x80daa347
sub ebx, edi
xchg esi, edx
add esi, ebx
mov edi, ebx
shr edi, 4
and edx, ebx
jmp 0x46b106
mov eax, 2
add edi, ebx
or edx, 0x80e0a738
xor edx, edi
mov ebx, edx
sub ebx, edx
shl ebx, 0x19
sub edx, 0x80e1c672
bswap edi
jmp 0x46b463
add dword [esp + 0x100], 0x20
inc edx
bswap esi
bswap ebx
and ebx, 0x80f1ec1d
xchg edx, edi
neg edi
jmp 0x46bf20
mov ecx, dword [ecx]
add esi, edi
mov ebx, esi
xchg esi, ebx
mov edi, ebx
xchg ebx, edx
nop
jmp 0x46a8b7
inc ecx
xor esi, ebx
or edx, 0x80ffaeb0
sub edx, esi
sub esi, edx
neg esi
xchg esi, ebx
jmp 0x46c224
mov ecx, dword [ecx]
and ebx, 0x8100ef34
and ebx, edx
ror esi, 0x16
and ebx, edx
nop
xor edi, 0x8102179f
xor esi, 0x81025de6
xor edi, esi
sub ebx, 0x8102d344
neg esi
sub esi, edx
shl edx, 2
add ebx, edi
and esi, 0x8103fba9
jmp 0x46c76b
mov ecx, dword [esp + 0x9c]
xor ebx, edi
sub esi, ebx
shr ebx, 0xc
and ebx, esi
rol edi, 9
not ebx
add ebx, 0x8105b3d1
mov edi, ebx
and esi, ebx
add esi, edi
add edx, edi
jmp 0x46aff1
mov ecx, dword [esp + 0x100]
add edx, ebx
ror esi, 2
xchg esi, edi
rol edi, 0x1d
xor edi, esi
jmp 0x46c02a
mov ecx, dword [ecx]
or esi, edx
add esi, ebx
sub edx, edi
sub esi, edi
add ebx, 0x8112d289
add edi, edx
xor edi, esi
jmp 0x46aba7
add ecx, dword [esp + 0xc4]
add edi, edx
add esi, edi
mov ebx, esi
or edx, ebx
or ebx, 0x81212b0e
shl edi, 0xa
xor esi, ebx
and edx, 0x8121e793
mov edi, 0x812220f8
add edx, edi
jmp 0x46aa57
mov dword [esp + 0x100], ecx
add esi, edx
mov ebx, edx
xor ebx, esi
mov edx, ebx
bswap ebx
and edi, edx
jmp 0x46c519
sub esp, 0x160
dec esi
and ebx, edi
xor edi, 0x8131352d
and edi, 0x81316e44
or esi, ebx
or edx, esi
xor edx, esi
mov edx, esi
neg esi
sub ebx, esi
rol esi, 0x1e
and edi, esi
sub ebx, 0x81338139
inc edx
jmp 0x46c1ba
mov ecx, dword [ecx]
mov esi, ebx
add edi, edx
mov ebx, edx
sub edi, edx
rol ebx, 0x1b
xor edi, esi
not esi
add ebx, 0x813feccd
or edx, ebx
shl edi, 0x13
jmp 0x46bf00
add ecx, dword [esp + 0xf8]
mov edx, esi
inc edi
dec edx
add ebx, edx
jmp 0x46b50e
cmp eax, dword [esp + 0x12c]
jmp 0x46c69e
movzx ecx, word [ecx]
xchg ebx, edi
mov edi, esi
shl edx, 8
dec edi
add esi, edi
xchg edx, ebx
sub edx, 0x8159cb02
and ebx, 0x815a1188
jmp 0x46cd05
mov ecx, dword [esp + 0xf8]
sub ebx, edi
sub edx, esi
shl ebx, 6
xor edx, edi
add esi, edi
add esi, edi
sub esi, ebx
shl esi, 0xf
jmp 0x46cbca
pop ecx
ror edx, 0x1d
ror esi, 0x1c
not edx
ror edi, 0x10
or edi, esi
or esi, edi
sub ebx, esi
xchg edx, edi
or ebx, esi
xor esi, 0x816a2526
add edi, esi
jmp 0x46b2a2
mov eax, 4
and ebx, edi
and esi, ebx
or edx, ebx
dec edx
xor esi, 0x8172ccb0
mov ebx, edi
xor edx, ebx
jmp 0x46b38b
add ecx, 0xc
xchg edx, edi
rol edx, 0xf
rol ebx, 0xd
rol edx, 0x1d
and esi, edi
sub ebx, esi
and edi, ebx
not edi
nop
or ebx, 0x817c3e14
or esi, 0x817c7a61
sub ebx, esi
xchg ebx, esi
xchg ebx, edi
add edi, esi
jmp 0x46af00
inc dword [esp + 0xf8]
sub esi, edi
shl esi, 0x18
xor esi, edi
dec edi
or esi, edi
add ebx, edx
or esi, ebx
xchg ebx, edi
add ebx, edi
xor ebx, esi
mov ebx, edx
jmp 0x46c8ef
mov ecx, dword [esp + 0xc4]
and ebx, edx
xchg esi, ebx
mov ebx, edi
mov edi, edx
mov edi, edx
rol edi, 0xc
bswap ebx
dec ebx
or esi, edi
sub ebx, esi
or edx, esi
jmp 0x46d151
mov ecx, dword [ecx]
xchg edx, esi
and edi, 0x819d65bd
mov ebx, 0x819d9f05
and ebx, edx
and edx, 0x819e10af
mov esi, 0x819e4a40
xor esi, edi
inc ebx
jmp 0x46d16c
mov ecx, dword [ecx]
shr ebx, 0x1e
xchg esi, ebx
sub ebx, edi
inc edi
xchg edx, edi
xchg esi, ebx
or esi, edi
nop
or edx, esi
add ebx, 0x81aa1178
shr edi, 0x13
xchg esi, edi
shl ebx, 0x19
bswap edx
jmp 0x46d027
sub dword [esp + 0x100], 8
add edx, esi
or esi, edx
and edx, esi
mov edx, esi
or edx, 0x81ac28e4
or esi, edx
and ebx, edi
add ebx, esi
xchg edi, ebx
mov edi, ebx
xor edx, edi
or ebx, 0x81adc184
xchg edi, esi
or esi, 0x81ae349f
or edx, esi
or ebx, edx
jmp 0x46c01a
mov dword [esp + 0x9c], ecx
rol esi, 0xd
or edx, 0x81cfaa15
sub esi, ebx
mov edi, 0x81d076b2
rol edi, 8
inc edi
shl edx, 0x11
xor ebx, edi
and edx, ebx
inc ebx
dec edi
and edx, ebx
shl ebx, 0x13
add esi, ebx
jmp 0x46b5db
mov ecx, dword [esp + 0xc4]
or edi, ebx
xchg edx, ebx
add edi, edx
and esi, edi
xchg edx, edi
or ebx, edx
jmp 0x46cab8
mov ecx, dword [esp + 0x100]
shr ebx, 0x13
shr edi, 0x1f
xor edi, 0x820cc3e2
or edx, esi
xor edx, 0x820d876a
or esi, 0x820df591
jmp 0x46ca54
mov dword [esp + 0x9c], ecx
inc edx
or esi, edi
xor esi, edi
bswap edi
add edx, esi
mov esi, 0x821bf238
and esi, edi
xor edx, edi
dec edx
xor edi, 0x821da328
xor edi, edx
jmp 0x46ad2c
push ecx
nop
mov edx, ebx
and edi, edx
jmp 0x46cc32
mov dword [esp + 0x100], ecx
dec edi
and edi, 0x825a7906
or ebx, edi
ror edi, 0x15
and esi, 0x825b2bcf
sub edi, edx
jmp 0x46bac6
mov ecx, dword [esp + 0x100]
dec edx
or esi, ebx
xor edi, 0x825c27d6
xor esi, edx
ror esi, 0xd
or edi, ebx
and edx, 0x825d13c2
or esi, edx
or ebx, edx
mov esi, edx
dec edi
sub edi, ebx
xor edx, edi
sub edx, ebx
jmp 0x46c984
add ecx, 0x18
inc edx
or edx, esi
or edi, esi
xor esi, edx
and edx, esi
sub edx, ebx
dec ebx
sub edx, ebx
sub edi, esi
shr edi, 9
shl edi, 0x12
mov edi, ebx
jmp 0x46ae4c
mov ecx, dword [esp + 0x100]
xor ebx, esi
xor edx, esi
jmp 0x46b79e
mov ecx, dword [ecx]
or esi, edx
shl esi, 0xd
inc edx
neg ebx
mov edx, 0x8272e4f0
ror edx, 1
jmp 0x46abc7
ret
add ecx, dword [esp + 0xc4]
shl esi, 5
sub edx, ebx
sub edi, edx
ror esi, 9
and esi, 0x828fee2d
not ebx
sub edx, edi
mov ebx, esi
jmp 0x46ba17
mov dword [esp + 0xf8], 0
xor esi, ebx
inc edx
mov esi, edx
or edi, edx
shr edi, 7
jmp 0x46c79f
jne 0x46cefd
sub ebx, 0x8297815b
shl ebx, 0x19
add ebx, edi
ror esi, 6
mov ebx, 0x8298770b
mov esi, 0x8298b109
jmp 0x46b481
cmp byte [ecx], 0
jmp 0x46c1d4
add dword [esp + 0x100], 0x78
add edx, 0x82d85bb0
add ebx, edi
jmp 0x46cd2a
mov ecx, dword [ecx]
and edi, edx
bswap edi
and edi, 0x82dee5a0
sub esi, edi
or edx, 0x82df6899
rol edx, 0xa
xor ebx, edi
mov esi, ebx
jmp 0x46bffa
jne 0x46b5db
neg edx
xchg edi, edx
neg esi
shr edx, 0x16
mov edi, ebx
or esi, ebx
add esi, ebx
jmp 0x46cc0c
add ecx, 0xc
and esi, ebx
xchg ebx, esi
or edi, 0x830f8992
jmp 0x46b83d
mov dword [esp + 0x9c], 0
xor ebx, 0x8313759d
xor edi, edx
or ebx, esi
jmp 0x46ca71
mov ecx, dword [esp + 0x9c]
or edx, ebx
add edx, 0x83198be3
shl edi, 7
jmp 0x46b290
add dword [esp + 0x9c], 4
xor esi, edi
shr edi, 8
ror esi, 0x1c
dec edx
shl esi, 0x11
xchg ebx, esi
xor edi, edx
xor esi, edx
or edx, ebx
xchg edi, esi
sub esi, edx
jmp 0x46af38
mov dword [esp + 0x100], ecx
ror ebx, 2
not edi
mov edi, edx
mov edx, esi
xor edi, 0x833cbcfb
xor esi, ebx
sub edi, 0x833d3c51
jmp 0x46c7d4
mov ecx, dword [ecx]
and ebx, edx
xor edi, 0x83486be5
and ebx, edi
shl edi, 0x15
xor esi, edx
sub edx, 0x83495ef6
mov edi, edx
add esi, ebx
sub edi, 0x834a0949
or esi, edi
jmp 0x46c178
mov ecx, dword [ecx]
and edx, 0x835a5571
mov edi, edx
xor edi, 0x835ac64d
or edi, esi
sub edx, 0x835b4685
jmp 0x46b09d
mov dword [esp + 0xc4], 0
bswap edx
shl edx, 0x1d
or esi, ebx
shr esi, 0x12
ror edi, 0x11
sub edi, 0x835cc278
xor ebx, edi
xor edx, ebx
jmp 0x46cd48
add dword [esp + 0x100], ecx
xor ebx, edi
xor edx, 0x83605299
xor esi, edi
add ebx, edx
rol esi, 6
or ebx, esi
mov edi, ebx
dec esi
add edx, ebx
add esi, edi
sub edx, 0x8362b77a
jmp 0x46ae30
mul ecx
xor edi, edx
xor esi, ebx
sub edi, ebx
and esi, ebx
bswap esi
shl edi, 2
sub ebx, esi
ror edx, 0xb
and edi, edx
dec ebx
and ebx, edi
sub ebx, edx
add esi, 0x8374da1e
jmp 0x46aaa3
add dword [esp + 0x100], 4
or ebx, edx
shl edx, 5
rol edx, 1
sub esi, edx
sub edi, ebx
or edx, edi
or edi, 0x837a5cf9
sub edi, edx
rol edx, 0x19
jmp 0x46afd9
xor eax, eax
shl esi, 4
or edx, 0x837b6517
xchg edi, esi
and esi, 0x837bd860
xchg edi, esi
mov edi, esi
sub ebx, 0x837c8e14
neg edx
shl edi, 0x1c
mov esi, 0x837d4000
jmp 0x46cefd
mul ecx
add edi, ebx
add edx, 0x83921238
mov edx, esi
shl ebx, 0x15
xchg edi, ebx
xor edx, esi
dec ebx
xchg edi, esi
inc esi
sub edx, 0x8399e8d1
rol ebx, 0x12
jmp 0x46a931
mov ecx, dword [esp + 0xc4]
mov edx, ebx
xor esi, 0x839aa892
and ebx, edx
mov esi, edi
or edx, edi
xchg edi, edx
xchg esi, edx
jmp 0x46cf48
mov dword [esp + 0x100], 0
inc ebx
shl esi, 0x18
or ebx, edi
or esi, edi
or ebx, edi
or esi, edi
add edi, esi
xchg edi, esi
shl edi, 9
xor esi, ebx
jmp 0x46cead
mov dword [esp + 0x12c], ecx
add esi, edi
shl ebx, 0x1a
add ebx, edx
ror edi, 0xb
neg esi
not esi
and esi, 0x83cd0db2
mov edx, edi
xor ebx, edx
xor edi, 0x83cdb9cd
sub ebx, edx
and edx, esi
bswap edi
jmp 0x46cfca
xor al, byte [ecx]
xor esi, ebx
sub esi, edi
mov edi, esi
neg ebx
xchg ebx, esi
and ebx, edi
jmp 0x46ab05
add ecx, dword [esp + 0x100]
or edi, esi
shl edx, 0xb
inc esi
sub ebx, esi
or ebx, 0x83d9197d
add edi, ebx
and esi, edx
sub edi, 0x83d9beb8
jmp 0x46b22a
mov ecx, dword fs:[ecx]
mov edi, esi
add ebx, esi
add esi, 0x83de33c4
xor ebx, esi
rol edi, 4
add edi, edx
and edi, edx
xchg ebx, edx
mov edx, ebx
sub edx, 0x83dfc7fa
mov esi, ebx
mov edi, edx
and esi, edx
jmp 0x46b599
mov ecx, 0x30
and edx, ebx
xor edi, 0x83e0e8cc
mov ebx, edi
xor edi, ebx
bswap esi
mov edi, esi
add esi, 0x83e203d4
or edi, 0x83e24767
and esi, edi
shl edx, 3
or ebx, esi
shl esi, 0x14
xchg ebx, edx
and esi, 0x83e41c1c
mov edi, esi
jmp 0x46cf9f
mov ecx, dword [ecx]
mov edi, 0x83e6084c
sub esi, edi
mov ebx, esi
xchg ebx, esi
inc edx
sub ebx, edi
or edx, esi
xor edi, 0x83e792b8
add ebx, esi
sub esi, edi
jmp 0x46c559
add ecx, 0x3c
xor edx, 0x83f6bfaf
rol esi, 0x18
or edx, edi
neg edx
xor edi, edx
neg edi
bswap edi
jmp 0x46acb9
add ecx, dword [esp + 0xc4]
sub ebx, edx
add edx, 0x83f8975c
or edx, edi
sub edx, ebx
xor edx, 0x83f944e2
add ebx, esi
inc esi
add edx, esi
xchg edx, ebx
jmp 0x46c914