Function at 0x477ac0
Capabilities:
Encrypt data using chaskey
Hash data using murmur3
Resolve function by parsing pe exports

Disassembly:
mov ebx, dword [ebx]
mov edi, ecx
sub edx, 0xd3628c04
or edx, 0xd362c3f6
rol edi, 0x12
jmp 0x4759dd
sub dword [esp + 0x24], 8
sub edx, 0xd3634672
sub ecx, edx
rol edx, 0x1e
and esi, edi
rol edi, 0x16
neg esi
and edi, ecx
neg edx
jmp 0x477bcf
pop ebx
add edx, ecx
or ecx, esi
sub edx, 0xd3718c3d
xchg edx, esi
rol esi, 0x1a
shr esi, 0x17
xor esi, ecx
xor edi, 0xd372a0dd
and ecx, edx
xchg edi, esi
jmp 0x47635d
mov ebx, dword [esp + 0x34]
or ecx, 0xd375127c
mov edx, esi
or edx, ecx
xor ecx, edx
xchg esi, edi
bswap edx
shl esi, 0x1d
jmp 0x476fca
jne 0x478576
dec edx
xor edi, esi
rol edx, 0xe
xor edi, edx
sub edi, ecx
neg edx
and esi, edi
and edi, esi
xor esi, ecx
mov ecx, 0xd37eca69
mov esi, edx
jmp 0x476ffa
add dword [esp + 0x24], 0x78
xor ecx, 0xd3812f81
dec ecx
or edi, ecx
or edi, 0xd381cddc
xchg edx, esi
not edx
xor ecx, 0xd38277c3
or edx, edi
inc edx
xor edx, esi
sub edx, 0xd3834447
and edi, ecx
neg ecx
jmp 0x476ef3
mul ebx
ror edx, 0x1b
add edi, edx
add esi, edx
mov ecx, 0xd3894955
ror ecx, 0x1f
or esi, 0xd389e74a
and edi, ecx
jmp 0x4758d1
mov ebx, dword [ebx]
nop
ror ecx, 6
sub edi, ecx
jmp 0x477ed4
add dword [esp + 0x24], 0x20
and ecx, esi
or edx, 0xd39b5ab3
xor edi, ecx
and esi, edi
or edi, esi
add esi, edx
not edi
neg edi
sub ecx, esi
jmp 0x4757ea
add ebx, 0xc
xchg ecx, edi
add edx, edi
xor esi, ecx
mov ecx, edx
shl edx, 0x1e
rol esi, 5
sub ecx, edi
and edx, esi
xor edi, edx
not ecx
jmp 0x475a87
mov ebx, dword [esp + 0x24]
dec ecx
or esi, 0xd3af15c6
bswap esi
add esi, edx
xor ecx, esi
xchg esi, ecx
jmp 0x476791
add ebx, 0xc
and esi, 0xd3b40802
bswap ecx
sub esi, edi
or ecx, 0xd3b4a67f
shr ecx, 0x1c
xchg edx, edi
not esi
mov edi, 0xd3b584fb
jmp 0x477f6f
mov dword [esp + 0x44], eax
dec esi
and ecx, edx
not esi
sub edi, ecx
mov edi, 0xd3bca18d
sub edx, 0xd3bcd49c
sub edi, edx
sub edi, 0xd3bd3ca6
jmp 0x4753bc
mov dword [esp + 0x74], ebx
bswap ecx
xchg edi, ecx
and edi, esi
ror edx, 0x1f
or esi, 0xd3c2405e
dec edi
neg edi
add edx, esi
jmp 0x478576
mov dword [esp + 0x44], 0
sub ecx, 0xd3c323fc
ror ecx, 5
mov edx, 0xd3c38d72
xchg ecx, edi
ror edx, 0xb
and edi, 0xd3c42b36
and ecx, edi
or esi, ecx
sub esi, edi
sub ecx, 0xd3c5000e
shl edi, 0x1c
rol ecx, 0x15
sub esi, edx
sub ecx, edi
jmp 0x475f79
add ebx, dword [esp + 0x34]
nop
mov edx, 0xd3cf3fed
sub ecx, edx
mov edi, edx
sub esi, edx
and ecx, edi
xchg ecx, esi
ror esi, 0x1f
sub esi, 0xd3d3a86d
neg edx
sub edx, esi
not edx
jmp 0x475f10
add dword [esp + 0x74], 4
xchg edx, esi
xchg edi, esi
xchg ecx, edx
and esi, 0xd3dcef56
and edi, esi
xchg esi, edx
dec ecx
neg edi
inc edi
jmp 0x47749a
mov ebx, dword [ebx]
dec esi
xor ecx, 0xd3ed5aef
rol ecx, 0xa
sub edx, 0xd3ee6da7
and ecx, 0xd3eecb18
and edx, ecx
xor edi, ecx
and ecx, edi
add edx, edi
neg edx
jmp 0x476ad5
mov eax, 4
and esi, ecx
add edi, edx
nop
or edi, edx
sub edx, ecx
sub esi, ecx
xchg edi, edx
jmp 0x475bdf
movzx ebx, word [ebx]
and ecx, edx
and esi, edi
xchg ecx, esi
mov esi, ecx
xor esi, ecx
inc edx
shl esi, 0xf
jmp 0x47870e
mov dword [esp + 0x74], ebx
inc esi
add edi, 0xd4394f13
add edi, edx
or edi, edx
jmp 0x476947
ret
push ebx
rol edx, 0x13
inc edx
mov esi, ecx
ror edx, 0x16
xor edx, esi
jmp 0x4774ae
mov dword [esp + 0x74], 0
xchg ecx, edx
sub edi, ecx
xor ecx, edi
sub edi, edx
and edx, ecx
bswap ecx
mov edx, ecx
bswap edx
add edx, edi
and edx, ecx
sub esi, ecx
jmp 0x476890
mov ebx, dword [ebx]
mov esi, edi
ror edx, 1
xor esi, 0xd48ec763
shr edx, 0xa
xchg esi, edi
and esi, edx
not edi
or ecx, esi
or edi, 0xd4900d95
jmp 0x476eac
mov ebx, dword [ebx]
and ecx, edi
xor edi, edx
and edi, edx
and esi, 0xd49cd715
shr esi, 8
ror edx, 5
shr edx, 0xe
xor edi, ecx
rol ecx, 0xd
ror edx, 0x11
xor edx, ecx
sub edi, 0xd49ebdfb
jmp 0x476172
rol eax, 8
and edi, esi
neg esi
xchg ecx, edi
bswap esi
mov esi, edx
mov edx, esi
shl ecx, 0x12
or esi, 0xd4a1683b
rol edi, 0x19
add ecx, esi
jmp 0x4787bd
add ebx, 0x18
inc esi
or edi, esi
mov ecx, 0xd4a60ea7
mov esi, edx
and ecx, esi
and esi, ecx
add ecx, 0xd4a6d856
add esi, 0xd4a70c3f
mov edx, 0xd4a74c36
xchg esi, edi
and ecx, edx
neg edx
add esi, edi
inc edi
inc edx
sub ecx, 0xd4a905e3
jmp 0x478855
add ebx, dword [esp + 0x24]
nop
or esi, ecx
sub edx, ecx
xor esi, edx
jmp 0x477071
jne 0x47783c
neg edi
sub edi, 0xd4ad0fb1
neg ecx
shr ecx, 0x1b
xchg ecx, esi
mov edx, ecx
neg edi
sub edx, edi
jmp 0x4754a8
cmp eax, dword [esp + 0x60]
jmp 0x47553c
add ebx, dword [esp + 0x44]
add edx, edi
rol edi, 9
mov ecx, esi
xor edi, edx
xor edx, 0xd4d02522
and edx, 0xd4d06567
shl esi, 5
add edx, esi
and edi, 0xd4d0fe5c
add edx, edi
and edx, 0xd4d1650f
mov ecx, 0xd4d1986c
jmp 0x475aae
mov ebx, dword [ebx]
add ecx, edx
sub edi, esi
mov esi, 0xd5207593
inc edx
nop
or ecx, edx
sub ecx, 0xd52152d4
and edx, ecx
and esi, edi
jmp 0x4768d9
mov dword [esp + 0x34], 0
xor esi, ecx
sub esi, edx
sub ecx, edi
shr edx, 1
bswap edi
add edi, 0xd53bda9d
jmp 0x4771f7
mov ebx, dword [ebx]
neg esi
or esi, 0xd53c59ff
xor edx, 0xd53c8d2f
neg esi
sub esi, edx
xor ecx, 0xd53d5664
add esi, 0xd53db6bc
mov edx, ecx
dec ecx
jmp 0x477b5d
add ebx, dword [esp + 0x34]
add ecx, esi
add edx, 0xd53eb44a
xchg esi, edx
and ecx, edi
or edx, esi
xor edi, 0xd53f83ed
and edx, esi
and edx, 0xd53ff488
sub ecx, 0xd540286d
and edi, ecx
xor edi, esi
or edx, edi
or edi, 0xd540f710
jmp 0x47593d
mov eax, 2
mov esi, edx
or ecx, 0xd5481878
add edi, esi
xor edi, esi
bswap edi
shl edx, 2
jmp 0x477b81
mov dword [esp + 0x60], ebx
xor edx, ecx
and esi, edi
or ecx, esi
xor ecx, edi
mov edx, 0xd54cf50f
jmp 0x477853
mov ebx, dword [esp + 0x34]
bswap ecx
or ecx, 0xd54ecd83
rol ecx, 1
xor edx, 0xd5502e00
ror edx, 5
and ecx, 0xd5519499
shl esi, 0x12
xor edx, esi
neg ecx
add edi, 0xd5536942
add esi, edi
mov esi, ecx
jmp 0x476a7f
mov ebx, dword [esp + 0x24]
rol edi, 9
xor edx, edi
xchg esi, ecx
xor edx, 0xd55d8b28
sub edi, edx
shr edi, 0x10
add edi, esi
jmp 0x476059
add ebx, 0x3c
add ecx, 0xd566472e
xchg esi, edx
and esi, 0xd566ae1c
and edx, edi
mov esi, edx
xchg ecx, edi
sub edx, esi
sub esi, edx
mov edx, 0xd567ec9f
xor esi, edx
rol ecx, 0x1f
add ecx, edi
sub ecx, edi
mov edi, ecx
jmp 0x4783fd
mov ebx, dword [ebx]
or ecx, edi
sub edi, ecx
xor edi, esi
and esi, ecx
sub esi, 0xd56bf282
rol ecx, 0x14
sub edx, esi
xor ecx, edi
jmp 0x476109
mov ebx, dword [esp + 0x74]
xor ecx, edx
or edi, edx
and edx, ecx
add edx, ecx
add esi, edi
nop
jmp 0x476369
mov dword [esp + 0x24], ebx
and edx, edi
inc edx
shr ecx, 0x10
or esi, 0xd57d5dec
xchg ecx, esi
mov esi, ecx
mov esi, 0xd57e6958
inc esi
or edx, esi
xchg edx, edi
mov ecx, edi
and esi, edx
xchg ecx, esi
inc edx
jmp 0x476b3a
mov dword [esp + 0x24], ebx
and esi, 0xd5c19ba2
sub esi, edx
bswap ecx
or edi, 0xd5c2a6ff
xchg esi, edx
dec edx
add ecx, edi
sub edi, esi
and ecx, 0xd5c3dedf
inc edi
xor edi, edx
mov esi, 0xd5c47d29
jmp 0x47557c
add ebx, dword [esp + 0x34]
ror ecx, 0xe
xor ecx, esi
or edi, esi
dec esi
and edx, esi
shl ecx, 0x1c
sub esi, 0xd5c763c1
xchg ecx, edi
xchg esi, edx
sub esi, 0xd5c7fea4
nop
and esi, 0xd5c86bdd
ror ecx, 0x15
xor esi, edx
jmp 0x47781b
mov ebx, dword [esp + 0x34]
mov ecx, 0xd5ca5159
rol esi, 0xf
nop
inc ecx
mov edx, ecx
or edx, esi
rol edi, 0x18
mov edx, 0xd5cbfb4a
sub edx, edi
add ecx, 0xd5cc63af
sub edi, esi
add esi, ecx
neg edx
jmp 0x4761c0
add dword [esp + 0x24], ebx
nop
shr esi, 0xb
xchg ecx, edi
and esi, 0xd5d9ca67
add esi, 0xd5da3ea2
dec ecx
mov edx, 0xd5dae7c0
xchg esi, edi
or ecx, 0xd5db8f62
shr edi, 0x17
nop
jmp 0x4756e4
add dword [esp + 0x24], 4
mov edx, edi
xchg ecx, edi
xor ecx, edx
inc esi
xor esi, edi
neg esi
or esi, edi
or edx, 0xd5de4a25
xchg edi, edx
sub ecx, 0xd5deb49c
and edi, 0xd5dee845
mov edx, ecx
rol esi, 0xf
not edx
jmp 0x4785b7
mov ebx, dword [ebx]
or ecx, edi
or edx, esi
sub esi, 0xd5e46d1d
bswap edx
jmp 0x4772dd
mov dword [esp + 0x24], 0
sub ecx, esi
sub edx, edi
or edx, 0xd602a11d
and esi, edx
add ecx, 0xd60313f9
and edi, esi
mov edx, ecx
sub esi, 0xd603abbf
or edx, esi
rol ecx, 3
jmp 0x476962
mov dword [esp + 0x24], ebx
xor ecx, edi
add edi, esi
and edx, esi
xor edi, edx
or edx, ecx
inc ecx
mov ecx, edx
xchg edx, esi
rol edi, 0xa
xchg ecx, edi
dec edx
jmp 0x4754e1
mov ebx, dword [esp + 0x74]
inc esi
shl esi, 4
xchg ecx, edx
add ecx, esi
jmp 0x4753a4
xor eax, eax
xor ecx, esi
and ecx, 0xd64c065c
mov ecx, 0xd64c3a44
shl edx, 0xd
and edx, esi
xor edx, ecx
mov edx, ecx
inc edx
sub ecx, edx
xor edx, esi
mov edi, 0xd64e0988
jmp 0x47783c
add esp, 0x98
add edi, ecx
neg esi
or esi, 0xd6953ad9
xor ecx, edx
add ecx, edi
xchg edi, ecx
add esi, 0xd69628ac
jmp 0x475e67
xor al, byte [ebx]
xor edi, ecx
or edx, 0xd696b4e7
or ecx, edi
xchg ecx, esi
inc esi
dec edi
add ecx, esi
jmp 0x476135
mov ebx, 0x30
and ecx, edi
add esi, 0xd6983ba7
sub edx, 0xd6986f3a
or edi, 0xd698a29d
xor ecx, 0xd698d613
add edi, edx
xchg edx, esi
xchg edi, esi
add edx, ecx
xor edx, ecx
or ecx, edx
or ecx, 0xd69a4956
jmp 0x4781e3
cmp byte [ebx], 0
jmp 0x4761d3
sub esp, 0x98
sub edi, esi
add edi, esi
mov edx, edi
add esi, edx
or edx, edi
mov edi, edx
or edi, 0xd6cb8f5e
sub esi, ecx
jmp 0x47595d
add ebx, dword [esp + 0x34]
add ecx, edi
sub edx, ecx
add edi, esi
mov edi, ecx
xor edx, edi
mov edi, edx
or edx, esi
or edx, 0xd6d87ab4
or edx, ecx
neg ecx
jmp 0x475cd6
mov ebx, dword [esp + 0x44]
ror esi, 0xe
mov esi, edx
and esi, ecx
sub edi, edx
sub esi, edi
inc edi
and ecx, edx
shl edi, 0x1c
neg ecx
bswap ecx
dec edx
mov esi, edx
mov ecx, 0xd6dccc2f
xchg edi, ecx
jmp 0x4755f0
mov ebx, dword [esp + 0x24]
or ecx, edi
add edx, ecx
sub edi, edx
and esi, edx
neg esi
add ecx, edx
sub ecx, esi
rol ecx, 6
xor esi, ecx
or edi, edx
not esi
shr edx, 8
jmp 0x475653
add ebx, dword [esp + 0x34]
xor ecx, edi
and esi, edx
xchg esi, edi
dec edi
ror esi, 1
and ecx, edx
mov edi, ecx
ror ecx, 0xe
xchg edi, edx
inc ecx
add esi, edx
not esi
or esi, edi
jmp 0x476b94
mov ebx, dword [ebx]
or ecx, esi
xchg esi, edx
xchg edx, esi
nop
xchg edi, esi
add edi, esi
ror edx, 8
rol edx, 0x18
shr edx, 0x11
add edx, edi
or ecx, edx
jmp 0x475725
add dword [esp + 0x24], eax
xor edi, edx
mov edi, 0xd7403e3f
and esi, 0xd74075c4
neg ecx
mov edi, edx
xor ecx, esi
not esi
or esi, 0xd7418393
jmp 0x476a01
mov ebx, dword fs:[ebx]
or esi, 0xd75dc9da
shr edx, 0x18
neg esi
and edi, edx
mov esi, edi
dec edi
add edi, esi
and edi, 0xd75f3dfd
jmp 0x47583d
mov dword [esp + 0x34], ebx
xor edx, 0xd766dbbe
xchg edx, edi
rol esi, 5
mov edi, edx
mov edi, edx
shr esi, 0x16
sub edx, ecx
sub ecx, edx
sub ecx, edx
or ecx, esi
or edx, edi
add ecx, edx
and edx, ecx
jmp 0x47697b
mov ebx, dword [ebx]
add edx, edi
mov edi, esi
sub edx, edi
and esi, edi
xchg esi, ecx
or edx, ecx
ror ecx, 0x1e
and esi, edx
xor ecx, 0xd78753dc
shl edx, 0xb
or esi, edx
xchg edi, esi
or esi, edx
mov edx, 0xd7885534
add esi, edx
jmp 0x476e65
inc dword [esp + 0x44]
shl esi, 7
xor edi, esi
add edx, esi
rol esi, 0x19
add ecx, 0xd79fae8c
mov ecx, 0xd79fe222
dec edi
rol esi, 0x16
and ecx, esi
not edx
shl ecx, 5
mov edx, 0xd7a4e092
sub edi, 0xd7a53e73
add edi, esi
not ecx
sub edi, 0xd7a60677
jmp 0x475a25
mov ebx, dword [esp + 0x24]
add edi, 0xd7a6971c
sub edi, 0xd7a6fbb6
shl esi, 0xc
xor ecx, edx
xchg ecx, esi
or edi, 0xd7a822da
and edx, edi
jmp 0x4768b1
mul ebx
sub esi, edx
xor ecx, edx
not ecx
sub edx, ecx
dec ecx
not edi
xor edx, 0xd7bf7e28
jmp 0x478053
inc ebx
rol edx, 0x16
and esi, edx
xchg esi, edi
xor ecx, esi
add edx, edi
or ecx, esi
dec ecx
mov ecx, edx
and edx, 0xd7cb8a29
jmp 0x47792c
mov ebx, dword [ebx]
and edx, edi
mov edx, ecx
and edx, 0xd7d7bccd
xchg esi, edx
and esi, edx
dec esi
xchg edi, edx
xchg edi, esi
jmp 0x47825c