Function at 0x4782e6
Capabilities:
Encrypt data using chaskey

Disassembly:
add ecx, dword [esp + 0xb4]
xor edx, ebx
or edi, esi
shl edx, 0xb
and esi, edi
sub edi, 0xb285e30b
neg esi
bswap esi
shr edi, 0x15
sub ebx, 0xb2877987
dec ebx
sub edx, edi
ror edi, 0xb
jmp 0x477d1a
mov ecx, dword fs:[ecx]
xor edi, 0xb2a92ccf
xchg ebx, edx
sub esi, edi
mov ebx, esi
add esi, ebx
xor edi, esi
sub ebx, 0xb2abd397
and ebx, edi
xchg edx, edi
xor edx, 0xb2ad23d0
jmp 0x475cd6
mov ecx, dword [ecx]
xchg edi, esi
xor ebx, 0xb2c981d4
mov ebx, esi
shr edx, 0x1f
shl edx, 0xa
add edx, edi
jmp 0x47884d
mov ecx, dword [ecx]
xor edx, edi
rol edi, 3
xor edi, esi
xor ebx, 0xb2d5b449
or edx, edi
inc edi
xchg esi, ebx
jmp 0x4773b1
jne 0x47727f
mov edi, 0xb2d7ccf5
shr ebx, 3
xchg edx, ebx
not edi
sub edi, ebx
inc esi
ror ebx, 0x1a
add esi, edi
xor ebx, 0xb2db7190
not ebx
or esi, 0xb2dc43e0
xchg ebx, edi
dec ebx
and edx, esi
or ebx, edx
jmp 0x47683d
add ecx, 0xc
or ebx, edx
add edx, esi
xchg edx, edi
xchg edi, edx
mov ebx, 0xb2e0440b
or edi, edx
rol edx, 0x1b
not ebx
add esi, 0xb2e218b3
jmp 0x475c13
rol eax, 8
add edx, ebx
ror edi, 0x11
xchg edi, edx
xor ebx, edi
mov edx, esi
jmp 0x47768b
add ecx, dword [esp + 0x30]
xchg ebx, edx
add ebx, 0xb308063e
and edi, edx
mov edx, edi
bswap ebx
or edi, ebx
bswap esi
sub ebx, 0xb30ad5a2
xchg edi, esi
xchg edi, edx
shr edi, 0xe
add esi, 0xb30c7903
or edx, edi
or edi, ebx
jmp 0x478388
mov dword [esp + 0x7c], ecx
or esi, 0xb311380e
or esi, edi
xor esi, 0xb3120e42
mov edx, 0xb31273c6
or esi, edx
xchg ebx, edx
jmp 0x476cb8
mov ecx, dword [ecx]
xor edx, esi
xor edx, ebx
shl ebx, 2
xchg edx, esi
sub ebx, 0xb324b830
sub ebx, edx
bswap ebx
sub ebx, esi
sub ebx, 0xb3265610
xor ebx, edi
and esi, edx
and esi, edx
add esi, 0xb328266e
jmp 0x47611c
mov ecx, 0x30
add edx, edi
sub edx, edi
or edx, esi
or esi, ebx
sub edi, ebx
mov esi, ebx
add esi, edx
bswap edi
jmp 0x475b02
add ecx, 0x3c
xor ebx, edi
neg esi
shl edx, 0x1d
sub esi, ebx
add esi, ebx
xor ebx, esi
or esi, ebx
jmp 0x475ef3
mov dword [esp + 0x7c], ecx
ror esi, 0xe
inc esi
ror esi, 9
or edi, esi
sub ebx, 0xb368aa4a
xchg edx, esi
shl esi, 9
and edx, edi
mov ebx, edi
jmp 0x478743
mov ecx, dword [esp + 0x7c]
sub edi, esi
xor edx, esi
xchg edi, esi
mov edx, ebx
add edi, esi
jmp 0x47789f
add ecx, dword [esp + 0x30]
or edx, 0xb39266b3
xchg ebx, edx
sub edi, ebx
shl esi, 0xd
xor ebx, edi
neg esi
mov edi, edx
and ebx, edx
and edx, ebx
add ebx, edx
xchg edx, esi
inc edi
jmp 0x475e76
add ecx, 0x18
xchg edi, edx
and edx, esi
xor edx, esi
jmp 0x475c89
mov dword [esp + 0x30], 0
xor ebx, 0xb3ad17bc
add edi, edx
mov esi, ebx
ror edx, 0x17
xor edi, edx
or edi, esi
or ebx, 0xb3af63c7
or edx, ebx
and ebx, edi
and edi, esi
xor edi, esi
mov esi, edx
sub esi, edi
and esi, edi
sub ebx, 0xb3b2da43
jmp 0x4776a5
ret
mov dword [esp + 0xb4], eax
bswap esi
or edi, 0xb3eccea9
or edx, esi
and ebx, edi
and esi, edx
sub edx, ebx
jmp 0x477c7b
add dword [esp + 0x7c], ecx
xor edi, edx
shl edx, 0x1e
or esi, 0xb40713d2
jmp 0x476ede
add dword [esp + 0xc0], 4
shr edi, 2
sub ebx, esi
mov ebx, 0xb4085e72
sub ebx, edx
add edx, ebx
or edi, edx
xor edi, ebx
xor ebx, edx
jmp 0x478686
add ecx, dword [esp + 0x7c]
not ebx
bswap edi
sub ebx, edi
bswap esi
rol edi, 6
ror edx, 0x12
and edi, ebx
xchg edx, ebx
jmp 0x477d72
mov ecx, dword [ecx]
mov edx, ebx
add ebx, esi
mov edx, ebx
and edi, edx
or edi, esi
xchg ebx, edx
mov edx, edi
bswap edi
jmp 0x475e2a
add dword [esp + 0x7c], 4
or edi, 0xb4484167
xchg esi, ebx
xor edx, 0xb44912e0
dec edi
add ebx, esi
shr edi, 3
mov esi, edi
ror edx, 0xd
and edx, edi
ror edx, 9
jmp 0x4761a5
add ecx, dword [esp + 0x30]
and edi, esi
ror edi, 0xd
bswap edx
mov edx, edi
or edi, ebx
bswap edx
ror edi, 0xf
sub edi, 0xb45fee02
sub edi, ebx
or esi, edi
add ebx, 0xb4613162
mov esi, edx
xchg esi, edx
jmp 0x477394
mov ecx, dword [esp + 0x7c]
xchg edx, edi
xchg edx, ebx
add esi, edi
or ebx, edx
mov edi, edx
sub esi, edi
bswap edx
ror edx, 0xd
jmp 0x4780b3
push ecx
shr edx, 0xa
xor edx, edi
xor edx, esi
and edi, ebx
or ebx, edx
xor edx, 0xb488d1b0
not ebx
jmp 0x47760c
movzx ecx, word [ecx]
and esi, ebx
and esi, edx
or ebx, edx
jmp 0x4784e3
mov ecx, dword [ecx]
add edx, ebx
and edi, ebx
sub edi, 0xb4caddf2
and ebx, edx
xchg edi, ebx
dec edi
xor esi, 0xb4cce537
sub edi, 0xb4cd5dc2
and edi, 0xb4cdc194
mov esi, edi
jmp 0x4772e8
mov dword [esp + 0x7c], ecx
and ebx, 0xb4ceabeb
sub edx, 0xb4cf17ca
or edx, ebx
and edx, edi
not edi
jmp 0x476d0a
mov ecx, dword [esp + 0xc0]
rol ebx, 0x19
xor ebx, esi
or edi, esi
add esi, 0xb4e42bcc
add ebx, edx
mov esi, edi
shl ebx, 0x11
xor edx, ebx
or esi, edi
or esi, ebx
ror ebx, 0xe
jmp 0x4759c2
mov ecx, dword [esp + 0x30]
mov esi, ebx
sub ebx, edx
mov esi, ebx
and esi, 0xb4ee1b6f
neg edi
inc ebx
or edx, ebx
mov ebx, 0xb4f01b02
or edi, esi
sub edi, esi
xchg esi, edi
jmp 0x47662c
add ecx, dword [esp + 0x30]
mov edx, ebx
xor ebx, 0xb50bd177
xchg esi, edx
ror esi, 0x19
sub ebx, edi
rol edx, 0x15
sub ebx, edi
xor edi, esi
shr esi, 0x13
sub edi, edx
jmp 0x476a36
mov ecx, dword [esp + 0xb4]
xchg edi, ebx
mov edi, edx
shl esi, 5
jmp 0x477bd7
add ecx, dword [esp + 0x30]
or edx, 0xb511c64c
bswap esi
or edi, ebx
mov esi, ebx
sub esi, 0xb513b7a1
add ebx, edi
sub esi, 0xb51489ca
shl edx, 0x19
xchg edi, esi
xchg edx, esi
ror edi, 0x11
add edi, esi
and edx, edi
and edx, edi
shr ebx, 7
add edi, ebx
jmp 0x47822d
add dword [esp + 0x7c], 0x20
inc edi
xor edi, esi
and esi, 0xb52afa01
add ebx, esi
bswap edi
sub edi, edx
rol edx, 4
or esi, ebx
shr ebx, 4
add esi, ebx
sub edi, esi
ror esi, 6
xchg esi, ebx
sub edi, edx
jmp 0x477090
pop ecx
sub esi, 0xb53277b4
add edx, 0xb532f250
xor edx, ebx
xor ebx, edi
inc edi
mov esi, ebx
sub esi, edi
jmp 0x478496
mov ecx, dword [esp + 0x7c]
mov ebx, 0xb56103c7
dec ebx
mov edi, 0xb561e7f6
rol ebx, 0x1d
sub esi, 0xb562bee3
add ebx, 0xb56328d1
mov ebx, edx
mov edx, esi
dec esi
or esi, edi
xor edi, 0xb5653abe
add edi, ebx
jmp 0x477e8a
inc dword [esp + 0xb4]
xor esi, 0xb59cd119
add ebx, edi
and ebx, 0xb59dcc7b
jmp 0x476643
mov ecx, dword [ecx]
add esi, edi
xor ebx, esi
or edx, esi
add edx, edi
ror ebx, 0x1f
mov edx, edi
jmp 0x4762a3
mov dword [esp + 0xc0], ecx
not ebx
or edi, esi
and edx, 0xb5c00ec7
or esi, ebx
mov ebx, edx
inc ebx
add esi, ebx
jmp 0x47727f
mov dword [esp + 0x30], ecx
mov edi, 0xb5c256ae
ror esi, 2
xor edx, ebx
xchg edi, edx
mov edi, esi
and ebx, edi
inc edi
add edx, ebx
not esi
sub esi, 0xb5c61731
xchg ebx, esi
mov ebx, 0xb5c71315
and esi, edi
jmp 0x477f3c
xor al, byte [ecx]
mov edi, ebx
and esi, edi
or edx, esi
xor ebx, edx
inc ebx
xor edx, ebx
or ebx, edi
and esi, edx
inc edx
inc edi
jmp 0x475d2e
mov ecx, dword [ecx]
mov esi, edx
xor ebx, edx
sub ebx, edx
sub edx, ebx
neg esi
rol esi, 0x11
mov edx, edi
jmp 0x476dee
xor eax, eax
xchg edx, edi
or edx, edi
and edx, esi
or ebx, edx
xchg edx, edi
mov edi, ebx
rol edx, 0x1e
and edx, edi
jmp 0x4774ab
inc ecx
shr esi, 2
sub edx, ebx
and ebx, edx
sub edx, esi
xchg edx, esi
xor ebx, edi
or edi, edx
add edx, esi
shr edi, 0x1b
jmp 0x477cf1
mov dword [esp + 0x7c], 0
xor edi, esi
or esi, ebx
sub edi, esi
inc edi
rol edi, 0xe
mov esi, 0xb64495b0
not edx
and edx, esi
dec edx
jmp 0x4788f5
mov ecx, dword [esp + 0x7c]
add edx, 0xb668e668
neg ebx
and esi, ebx
xchg edi, ebx
jmp 0x4766ac
mov eax, 2
inc esi
sub esi, 0xb6799989
sub edx, esi
add edi, 0xb67a9dff
or edi, 0xb67b1742
mov ebx, esi
neg esi
sub esi, ebx
or edx, esi
neg ebx
mov edx, esi
xor edx, ebx
mov edi, ebx
mov esi, edx
mov edx, ebx
jmp 0x476e15
mov ecx, dword [ecx]
mov edx, 0xb689f494
mov edi, ebx
shl edi, 0xf
xchg edi, esi
xchg ebx, edi
sub esi, ebx
xor ebx, esi
or edx, edi
jmp 0x476e28
jne 0x4774ab
dec edi
add ebx, esi
shr ebx, 8
sub edx, 0xb6b288ef
not edi
jmp 0x476f0d
mov dword [esp + 0xc0], 0
or esi, edx
shl edi, 0xb
xchg esi, edx
shl ebx, 5
inc edi
rol esi, 7
add esi, ebx
sub edi, esi
mov esi, 0xb6c642a8
xchg edi, edx
mov esi, ebx
sub ebx, edx
jmp 0x47633e
mov ecx, dword [esp + 0x30]
dec edx
and edx, esi
and edx, ebx
and edx, 0xb6db0b7e
nop
jmp 0x47668e
mul ecx
and ebx, edx
add esi, ebx
bswap ebx
xchg esi, edi
sub edx, esi
xor edx, edi
bswap ebx
sub edx, esi
ror edi, 9
sub esi, ebx
bswap edx
bswap edi
mov esi, edx
jmp 0x47654e
sub dword [esp + 0x7c], 8
and esi, 0xb70a5041
sub edi, edx
add edx, edi
add esi, ebx
mov esi, 0xb70c1d99
sub esi, edi
xor ebx, edx
mov edx, esi
ror edx, 6
rol edi, 0x11
jmp 0x476921
cmp byte [ecx], 0
jmp 0x4779c1
mov eax, 4
mov edx, edi
xchg edx, ebx
add edx, esi
not ebx
and esi, ebx
xor edi, esi
shl edx, 6
add edx, 0xb71dd103
add esi, ebx
mov edi, 0xb71ea857
jmp 0x476b2f
mov ecx, dword [ecx]
sub edi, esi
and esi, 0xb727d379
xchg edx, ebx
not ebx
add edi, 0xb7292c96
sub edx, edi
ror edi, 0x11
rol esi, 0x15
xor ebx, edx
jmp 0x476c13
add dword [esp + 0x7c], eax
rol ebx, 0x19
add ebx, esi
or esi, edi
sub edx, esi
xor edx, esi
jmp 0x4777a2
mov ecx, dword [ecx]
or edx, edi
ror edx, 0xc
dec esi
mov esi, edx
sub edi, 0xb74ed4ab
add esi, edx
add esi, ebx
or edi, ebx
mov ebx, edi
rol edx, 7
or edi, esi
and esi, edx
neg edx
or esi, edi
mov edi, esi
jmp 0x4768f1
mov ecx, dword [esp + 0x30]
or ebx, esi
or esi, edx
not ebx
inc ebx
shr edx, 0x10
and esi, edi
and ebx, 0xb76aed04
xor esi, edi
shr esi, 0x14
jmp 0x475f3b
mov ecx, dword [ecx]
add edx, edi
xchg edi, edx
ror edi, 9
sub edx, esi
or esi, edi
sub ebx, esi
jmp 0x476be9
mov ecx, dword [ecx]
xor esi, ebx
or ebx, edx
sub edx, edi
or edi, ebx
mov edi, 0xb79b482b
and esi, ebx
sub edx, ebx
rol edi, 0xc
and edi, 0xb79d2a5f
jmp 0x476241
mov dword [esp + 0xc0], ecx
and edi, ebx
sub ebx, edi
xchg edi, ebx
and esi, edi
shr edi, 0x15
xor esi, 0xb7d29fe8
or esi, 0xb7d31650
jmp 0x47781b
sub esp, 0x100
xchg ebx, esi
or edi, esi
shr ebx, 3
jmp 0x478992
add esp, 0x100
not edi
and ebx, edi
add ebx, edx
add ebx, 0xb8027fae
add edx, ebx
mov edx, edi
mov ebx, edi
add ebx, edi
not edi
and ebx, edi
shr edi, 2
xor esi, ebx
jmp 0x47646e
cmp eax, dword [esp + 0xec]
jmp 0x475ca2
mul ecx
sub ebx, esi
inc edi
xor edx, edi
xor edi, 0xb8335141
mov esi, edi
not ebx
add edi, 0xb834b789
add ebx, 0xb835635e
dec esi
mov edi, edx
inc edx
mov edx, esi
bswap ebx
not edx
or edx, edi
jmp 0x477e2a
mov ecx, dword [esp + 0xc0]
xor esi, edi
sub esi, edi
add esi, edx
dec edx
sub ebx, 0xb86a59db
mov esi, edi
bswap esi
neg esi
jmp 0x4774c3
add dword [esp + 0x7c], 0x78
not esi
shl edi, 0x18
sub ebx, esi
mov ebx, 0xb888a9e3
and esi, edx
and edi, 0xb8899914
xor esi, edi
neg esi
or esi, 0xb88b1ed5
or esi, edi
xchg ebx, edx
xor edi, edx
and edi, esi
jmp 0x477b15
add ecx, 0xc
xchg esi, edi
shr edx, 0xb
jmp 0x477f5f
mov dword [esp + 0xec], ecx
neg edx
mov ebx, esi
xor esi, edx
bswap esi
add esi, ebx
and esi, edi
add edx, ebx
neg edi
add ebx, edx
ror edx, 0x1b
jmp 0x475f21
mov dword [esp + 0xb4], 0
ror edx, 8
add edx, 0xb8cd127a
not edx
xor esi, 0xb8cdd213
or ebx, esi
jmp 0x477a54