Function at 0x46da92
Capabilities:
Encrypt data using chaskey

Disassembly:
add ebx, 0xc
add ecx, edx
sub edi, 0x7809cbb8
ror edx, 0x14
dec edx
shr esi, 0x1a
or edx, 0x780a644e
inc esi
rol esi, 0x1d
sub edx, 0x780adb3e
xchg esi, ecx
sub edx, esi
xor edx, 0x780b4956
ror edi, 0x16
inc edx
jmp 0x46ad0e
mov ebx, dword [ebx]
and edi, edx
and esi, 0x78172258
jmp 0x46ccba
mov ebx, dword [ebx]
shr ecx, 0x18
mov esi, edi
not ecx
xchg edx, esi
jmp 0x46cee5
inc ebx
xor edi, esi
dec edx
and ecx, esi
and edx, edi
jmp 0x46d66d
jne 0x46b72c
neg esi
dec edx
xchg esi, edx
and edi, esi
jmp 0x46c0a1
mov ebx, dword [ebx]
add esi, ecx
sub esi, ecx
and ecx, esi
mov edi, edx
and edi, 0x782aaeec
add edi, esi
ror esi, 4
xor esi, edi
jmp 0x46d994
mov ebx, 0x30
xchg esi, edx
xor edi, esi
and esi, 0x783c133e
mov edx, ecx
or ecx, 0x783c5bc4
and ecx, edx
jmp 0x46d306
mov eax, 4
sub esi, 0x7849d7f8
and edx, edi
not esi
inc edx
jmp 0x46c540
mul ebx
mov edx, ecx
and esi, 0x784d734c
and edi, esi
and esi, edx
xchg esi, ecx
sub edx, ecx
sub esi, edx
sub edi, esi
inc esi
mov ecx, 0x784e9a1c
jmp 0x46d8be
rol eax, 8
xor edi, edx
dec edi
add edi, ecx
xchg edi, ecx
ror esi, 4
inc edx
ror esi, 7
xor edi, 0x78601f98
neg ecx
nop
not edi
xor edx, ecx
jmp 0x46ac33
mov dword [esp + 0x10c], ebx
or edi, esi
or edx, esi
and edx, 0x7875625c
and esi, edi
and esi, ecx
not edi
and ecx, esi
xchg edx, esi
sub ecx, 0x7876412a
ror edi, 0x1f
jmp 0x46d4e9
mov dword [esp + 0x3c], ebx
xor esi, edi
or edi, ecx
dec edi
and edi, edx
xchg esi, edx
shl edx, 8
mov edi, 0x788661d2
xchg edx, ecx
or ecx, edi
neg edx
xchg edx, edi
mov edx, esi
jmp 0x46cf9a
xor eax, eax
add ecx, edx
xor edx, esi
inc edx
inc edi
mov esi, ecx
mov edi, ecx
nop
not edi
jmp 0x46b72c
xor al, byte [ebx]
mov edx, ecx
xchg esi, edi
rol edx, 0x1a
xor esi, 0x789a46fa
xchg edi, esi
sub edx, 0x789a901c
and edx, edi
inc edi
mov edx, 0x789b041e
sub edi, 0x789b2a00
and esi, edx
or edi, edx
jmp 0x46b1d6
mov dword [esp + 0x10c], 0
sub ecx, esi
rol ecx, 0x1c
add ecx, 0x78a2a61a
ror esi, 0x10
add ecx, edx
sub ecx, edx
or ecx, 0x78a33870
mov edi, ecx
mov esi, edx
inc edx
add edx, ecx
dec edi
sub edi, esi
mov esi, edi
jmp 0x46c788
mov dword [esp + 0x10c], ebx
or edx, 0x78a46be8
xor edi, ecx
sub ecx, edx
or ecx, 0x78a4d85a
xchg esi, ecx
dec edx
dec edi
xchg esi, edi
or esi, edx
mov edi, ecx
jmp 0x46da6b
add ebx, 0x18
sub ecx, 0x78a5eb52
sub edi, ecx
jmp 0x46c311
mov ebx, dword [esp + 0x3c]
add ecx, 0x78a91254
xor ecx, edx
or edx, ecx
sub esi, ecx
xor edi, edx
and edx, 0x78a9cb38
mov ecx, 0x78a9f1cc
and ecx, edx
add esi, edi
xchg ecx, edx
ror edi, 0xf
xchg esi, edx
or esi, ecx
neg edi
jmp 0x46ab40
cmp eax, dword [esp + 0x100]
jmp 0x46d509
mov ebx, dword [ebx]
neg edi
shl edx, 7
and edi, esi
dec edx
ror ecx, 0x17
mov edi, edx
mov ecx, edx
sub esi, ecx
mov esi, edi
not ecx
jmp 0x46c9f3
mov ebx, dword [ebx]
mov ecx, edi
mov edx, edi
bswap ecx
inc esi
ror esi, 0x15
sub esi, edi
xchg esi, ecx
and edi, 0x78c36780
add edi, esi
shl edx, 0x1a
bswap edi
xchg esi, edi
jmp 0x46c258
add ebx, dword [esp + 0x104]
xchg esi, edi
and edi, edx
jmp 0x46cd24
mov ebx, dword [ebx]
add ecx, edx
and ecx, 0x78dd4bfa
inc esi
xor edx, 0x78dd9b5e
jmp 0x46d546
add dword [esp + 0x3c], 0x20
or esi, edi
bswap edx
mov ecx, edx
and edi, esi
inc esi
xor ecx, edx
jmp 0x46d92f
add ebx, dword [esp + 0x3c]
mov edi, esi
add edx, ecx
mov edx, edi
xchg edi, ecx
xor ecx, edi
xor esi, ecx
jmp 0x46d35c
add dword [esp + 0x3c], ebx
add esi, 0x78ea94a4
xor esi, edx
and edx, ecx
xchg edi, esi
or edi, edx
and ecx, edx
bswap esi
add edx, 0x78eb96e6
xor ecx, esi
xor edx, edi
jmp 0x46be4e
mov ebx, dword [esp + 0x10c]
or esi, edx
or edx, edi
and ecx, edi
neg ecx
inc edi
ror edi, 4
and ecx, edi
xor esi, edi
jmp 0x46d2e6
add ebx, dword [esp + 0xd8]
neg esi
shl esi, 0x1c
sub edi, ecx
xor ecx, edx
jmp 0x46afec
mul ebx
and edx, esi
add edx, ecx
mov edx, edi
mov edx, 0x78fb3bfe
inc edx
xor ecx, edx
neg esi
dec edx
jmp 0x46d194
pop ebx
shr edi, 0x11
mov edx, edi
mov esi, edi
neg esi
dec edx
mov esi, 0x78fe5466
xor edi, esi
rol edi, 0x18
jmp 0x46b8e4
mov ebx, dword [ebx]
sub ecx, esi
sub edi, esi
mov ecx, edx
add edx, ecx
xor edi, 0x7906ecd2
xchg edx, ecx
mov esi, ecx
xor edx, 0x79076342
xchg ecx, edx
sub esi, edx
not edx
mov edi, edx
jmp 0x46b859
mov ebx, dword [esp + 0x3c]
sub esi, 0x79083222
mov edx, ecx
add edx, 0x79087cce
shr ecx, 9
xor edx, esi
xchg ecx, edx
mov esi, edi
xor edi, ecx
jmp 0x46b961
add ebx, dword [esp + 0x104]
xchg edx, esi
add edi, 0x790ee3f0
and esi, ecx
xchg edi, edx
or ecx, esi
mov esi, 0x790f77ec
xor edi, 0x790f9dd6
or esi, 0x790fc264
sub esi, 0x790fe752
or esi, 0x79100d8e
jmp 0x46b3d2
mov ebx, dword [esp + 0x104]
sub esi, ecx
shr edi, 0x12
mov edi, edx
mov esi, edi
xor edi, ecx
xor ecx, 0x79159590
jmp 0x46d140
mov ebx, dword [ebx]
mov edx, edi
dec edx
shr esi, 0xc
sub ecx, edx
and edi, 0x79165602
ror edi, 0xc
inc edx
mov edx, esi
not edx
or ecx, edx
jmp 0x46c856
movzx ebx, word [ebx]
not esi
and ecx, 0x79312a24
mov ecx, esi
mov edx, esi
mov ecx, 0x793193aa
sub edi, ecx
and edi, edx
xchg ecx, edi
jmp 0x46b047
add ebx, dword [esp + 0x104]
mov ecx, edi
or ecx, 0x79371dfe
or esi, 0x79374404
and edi, 0x79376cb8
mov edi, edx
or ecx, 0x7937b730
add edx, esi
xor edx, edi
sub ecx, 0x79382ea4
ror edi, 0x12
inc edx
mov edi, ecx
jmp 0x46b833
sub dword [esp + 0x3c], 8
sub ecx, 0x793ee044
xchg edx, esi
or edi, ecx
xor esi, ecx
inc edi
add edx, edi
add edi, ecx
dec esi
add esi, edi
add ecx, edx
xor edx, edi
and ecx, esi
and edx, edi
mov ecx, edi
jmp 0x46c1ab
mov dword [esp + 0x104], 0
ror ecx, 0x11
xchg ecx, esi
or edi, 0x794acefa
xor edi, esi
or ecx, esi
mov edi, ecx
nop
add edi, 0x794b892a
jmp 0x46d162
add dword [esp + 0x10c], 4
and edx, edi
xor edi, esi
xor edx, 0x794e1ce2
neg edi
dec esi
shr edi, 7
or esi, 0x794eb936
add esi, edi
xor esi, 0x794f0112
sub esi, 0x794f27a0
jmp 0x46bfab
mov dword [esp + 0x104], ebx
and edi, 0x7951ce2c
add edi, esi
xor edi, edx
mov edi, 0x79524036
jmp 0x46c2f4
add ebx, dword [esp + 0x104]
inc edx
inc ecx
sub ecx, edi
ror esi, 0x18
and esi, 0x79642f80
and edx, esi
mov esi, edx
sub esi, edx
jmp 0x46cdeb
add ebx, dword [esp + 0x104]
sub ecx, edi
sub ecx, edx
or ecx, 0x7981ae52
dec esi
inc edi
sub esi, edx
xchg edx, ecx
or ecx, esi
bswap esi
or esi, edx
add edi, 0x7982dd80
mov edi, 0x79830268
jmp 0x46d707
mov ebx, dword [esp + 0x3c]
mov edx, ecx
bswap ecx
dec edi
sub edi, 0x79852806
and esi, edx
mov edx, ecx
inc edi
xchg edx, ecx
jmp 0x46d74d
push ebx
and ecx, edx
and edx, esi
shl ecx, 0x13
mov edi, ecx
or edi, ecx
xor esi, 0x7986a188
not edx
xchg ecx, edi
add edi, 0x79871756
and ecx, edx
xchg edx, ecx
or esi, edx
or ecx, edx
and edi, edx
jmp 0x46b6b8
add dword [esp + 0x3c], 4
sub esi, ecx
sub edi, edx
xor ecx, edi
ror edx, 0x1d
mov edi, esi
sub edi, 0x7989fd0e
and esi, 0x798a234a
xor edi, esi
inc edi
mov edi, esi
shl ecx, 8
bswap esi
jmp 0x46cd06
mov dword [esp + 0x3c], ebx
or ecx, 0x798ed50a
and ecx, edx
xor edi, esi
xchg ecx, edi
add edx, esi
inc esi
ror edi, 0xf
mov ecx, edx
jmp 0x46d7d6
mov dword [esp + 0x3c], ebx
neg esi
sub edx, 0x799a1c62
and edx, edi
mov ecx, 0x799a64be
jmp 0x46cf46
add dword [esp + 0x3c], 0x78
add esi, edi
xchg edx, esi
bswap edx
or esi, edi
and ecx, 0x799e34c2
xchg esi, edx
jmp 0x46d828
mov ebx, dword [esp + 0x104]
and ecx, edx
or ecx, 0x79a126f0
shr ecx, 0x18
sub edi, esi
add esi, edx
and edx, esi
sub edx, ecx
and edx, edi
jmp 0x46bedd
add ebx, 0x3c
dec esi
xchg ecx, edx
or edx, edi
or edi, edx
jmp 0x46abb3
mov dword [esp + 0x3c], 0
mov edx, 0x79b5527a
sub edx, ecx
sub esi, edx
sub edi, esi
rol esi, 0x12
xchg esi, edi
mov edi, 0x79b634e6
xchg edx, ecx
mov edi, 0x79b67d3a
sub edi, esi
add esi, edx
and edx, esi
jmp 0x46dab5
mov dword [esp + 0xd8], eax
shr ecx, 7
neg ecx
and esi, 0x79b76632
xor ecx, 0x79b78c6e
and ecx, edi
or edx, edi
sub esi, 0x79b7f808
mov esi, 0x79b82304
mov edx, ecx
xor edx, 0x79b86b8c
dec edx
inc edx
sub edi, esi
shl edx, 3
jmp 0x46c688
mov ebx, dword [ebx]
or edi, edx
neg esi
xor ecx, edx
and esi, 0x79c5e6ca
shr edi, 9
or edi, ecx
or edi, esi
xor edi, 0x79c67d08
jmp 0x46bcf0
mov ebx, dword fs:[ebx]
or esi, 0x79c6aef2
sub edi, edx
xchg edx, esi
sub edx, esi
nop
or edx, ecx
nop
xchg edx, esi
add ecx, edx
and ecx, 0x79c7faa8
add ecx, edi
mov edx, esi
jmp 0x46aa00
mov ebx, dword [ebx]
or esi, edi
neg ecx
not ecx
xchg ecx, esi
or esi, edi
xor edx, 0x79cad04c
not esi
xor esi, 0x79cb1dee
add edi, 0x79cb4100
sub edx, 0x79cb669a
jmp 0x46b558
mov ebx, dword [esp + 0xd8]
bswap esi
xchg ecx, esi
and edx, 0x79d32864
ror esi, 0x1e
add edx, edi
xor ecx, 0x79d39ce4
and esi, edi
or ecx, 0x79d3e4c0
add ecx, esi
add edx, esi
and edi, ecx
or ecx, esi
jmp 0x46c065
inc dword [esp + 0xd8]
sub edx, ecx
shr ecx, 0xc
bswap edx
and esi, edx
xor esi, edx
neg edi
and edx, edi
inc edi
xor ecx, esi
add edi, ecx
jmp 0x46c7e6
jne 0x46d4e9
sub edx, edi
add ecx, edi
xor esi, edx
xchg edx, edi
sub ecx, edx
shl edx, 6
and ecx, 0x79dd1512
sub edi, edx
jmp 0x46cd6d
mov ebx, dword [ebx]
add edx, edi
or edx, 0x79de8cc8
xor edi, ecx
dec ecx
shr edx, 0x1b
sub edx, edi
add esi, edx
or edi, 0x79df6cb8
and esi, edi
mov edx, 0x79dfb36c
or edx, 0x79dfd82e
or ecx, edx
jmp 0x46c184
cmp byte [ebx], 0
jmp 0x46ac71
add esp, 0x118
and ecx, esi
xchg ecx, esi
or esi, edi
mov esi, edi
and edi, ecx
or edx, 0x79f118ee
sub edx, esi
add ecx, edx
jmp 0x46d81a
mov ebx, dword [ebx]
add edi, 0x79f3128c
add ecx, esi
or esi, 0x79f359ec
shr esi, 0xd
add edx, edi
or edx, 0x79f3c604
and ecx, esi
or ecx, 0x79f41448
xchg esi, ecx
and edi, ecx
xor edx, esi
and ecx, edx
jmp 0x46c5bc
mov ebx, dword [esp + 0x10c]
or edi, 0x79f8cb74
xor edx, esi
mov esi, ecx
sub esi, ecx
mov ecx, edi
xchg edx, esi
xchg edx, ecx
and esi, 0x79f9b2a0
sub edx, esi
xchg esi, edi
jmp 0x46bff0
ret
mov ebx, dword [esp + 0x104]
mov edi, 0x79fc5082
and ecx, edi
inc edx
sub edx, edi
sub edx, ecx
shl edi, 0x1e
shr edx, 0x1b
xchg edx, esi
jmp 0x46be7a
add dword [esp + 0x3c], eax
sub ecx, edx
xor edi, edx
xchg edi, esi
or edi, edx
mov edi, esi
not edi
jmp 0x46b8b0
mov ebx, dword [esp + 0x3c]
and esi, edi
or edx, esi
or esi, edi
or esi, ecx
and edi, 0x7a076e50
add edx, edi
add edx, ecx
and edi, 0x7a07d7aa
jmp 0x46bb34
add ebx, 0xc
inc edx
xor edx, esi
xor esi, edi
mov ecx, esi
rol edi, 0xd
shl esi, 5
and edi, 0x7a0ba826
and edi, ecx
jmp 0x46bd96
mov eax, 2
shl ecx, 0x18
xchg edi, ecx
sub edx, ecx
sub ecx, esi
add edi, 0x7a133a8c
sub edi, ecx
add edi, 0x7a138210
sub esi, 0x7a13ad0c
jmp 0x46d425
sub esp, 0x118
or edi, esi
xor edi, 0x7a14074e
or edx, esi
mov ecx, edx
add edi, edx
add esi, edi
sub ecx, 0x7a14b338
xchg edi, edx
jmp 0x46dac5
mov dword [esp + 0x100], ebx
add edx, esi
or edx, esi
jmp 0x46aea0
mov dword [esp + 0xd8], 0
xchg edi, ecx
add edx, 0x7a158398
or esi, edi
shr edi, 0x1e
and edi, 0x7a15f714
sub edi, esi
xor edi, ecx
sub edi, 0x7a166970
neg esi
and edx, esi
jmp 0x46b7ff