Function at 0x46cfe1
Capabilities:
Encrypt data using chaskey

Disassembly:
mov ecx, dword [esp + 0x84]
not edx
ror esi, 0xe
neg esi
dec edx
or esi, ebx
and edx, esi
and edx, 0xf73ee281
jmp 0x46dce4
mov ecx, dword [ecx]
xor edx, ebx
sub edx, 0xf7420470
and edi, ebx
or edi, edx
sub edi, esi
xor edi, edx
xor ebx, edi
shl ebx, 0xe
add edi, 0xf7441963
shr ebx, 0x14
xchg esi, edi
shl ebx, 0x1d
xor edi, edx
shl ebx, 0x1f
or edx, ebx
jmp 0x46da42
push ecx
inc esi
and ebx, esi
rol edx, 0xc
xor edx, esi
shr edi, 0x12
sub edx, esi
shl ebx, 4
and esi, 0xf7520a3d
xor edx, 0xf75248fd
xor edi, edx
jmp 0x46ab8b
add dword [esp + 0x54], 4
sub ebx, edx
not edx
or ebx, edi
rol edx, 0x17
sub edx, ebx
mov edx, 0xf768e4d2
mov ebx, 0xf7691c02
xor esi, 0xf769572d
or esi, ebx
jmp 0x46b681
add ecx, dword [esp + 0x50]
mov esi, edx
and edi, ebx
and edi, ebx
bswap edi
or esi, ebx
jmp 0x46d4b9
mov ecx, dword [ecx]
xor edx, edi
shl esi, 6
add ebx, edi
mov esi, edi
or esi, 0xf774f5d6
add ebx, edi
jmp 0x46aeaf
xor eax, eax
xor ebx, esi
and edx, 0xf796c910
add edi, 0xf79701b8
or ebx, edi
shl ebx, 7
xor esi, 0xf797a612
add edx, ebx
xor ebx, esi
sub ebx, edx
not edi
sub ebx, edx
inc edi
shl edx, 9
jmp 0x46afb5
mov eax, 2
neg edx
and esi, edx
xchg ebx, edi
shr esi, 0x11
add ebx, 0xf79faf31
add ebx, edi
sub esi, edx
bswap edi
not edi
and ebx, esi
shr edx, 0x13
mov edx, edi
xor ebx, esi
ror ebx, 3
xor esi, 0xf7a1e850
jmp 0x46ba90
add esp, 0xd0
and edx, ebx
and esi, 0xf7c6a6b9
xchg edx, ebx
and edi, edx
mov edx, esi
mov edi, 0xf7c7a5ce
neg ebx
jmp 0x46dbf3
mov dword [esp + 0x88], eax
shl esi, 1
and ebx, esi
mov edx, ebx
jmp 0x46db45
add ecx, dword [esp + 0x50]
xor edi, edx
or edi, 0xf7cf2c3d
sub edi, edx
or edx, 0xf7cfa4be
ror edi, 0xc
sub esi, ebx
xor edx, esi
rol ebx, 5
jmp 0x46a769
mov dword [esp + 0x84], ecx
xor edi, ebx
bswap esi
dec edx
xchg edx, edi
xor edi, 0xf7d404bf
not edi
or ebx, esi
rol edx, 0x14
sub ebx, edi
sub esi, ebx
sub esi, edi
add edx, 0xf7d5ba69
ror esi, 3
mov ebx, edi
jmp 0x46ac09
xor al, byte [ecx]
sub edi, 0xf8154a6a
rol edi, 0xe
xchg edx, ebx
bswap edi
sub ebx, edi
add esi, 0xf8169e21
and ebx, edx
xor edi, ebx
jmp 0x46c091
mov ecx, dword [ecx]
or edx, esi
mov esi, edi
mov edx, esi
mov esi, ebx
sub edx, esi
shl esi, 9
or edi, esi
bswap edx
xor ebx, edi
xor edi, ebx
jmp 0x46b049
mov ecx, dword [ecx]
ror esi, 9
xchg esi, ebx
sub ebx, 0xf821a03c
neg edi
rol edi, 3
xor ebx, edx
add esi, ebx
sub edx, ebx
or edi, edx
jmp 0x46d0b4
add ecx, dword [esp + 0x50]
or ebx, edi
add esi, ebx
not esi
inc edx
and esi, ebx
add edi, edx
add ebx, esi
jmp 0x46beca
cmp byte [ecx], 0
jmp 0x46d4d2
mov dword [esp + 0x50], 0
shr edi, 3
not esi
xchg edx, esi
xor ebx, edx
xchg edx, esi
rol edi, 0x1c
or ebx, 0xf852c7f8
shl edi, 4
xor ebx, edx
rol esi, 0x18
jmp 0x46c185
add ecx, 0xc
and edi, ebx
and edx, 0xf85f06c7
and ebx, esi
bswap edx
jmp 0x46cbd7
movzx ecx, word [ecx]
bswap esi
add edx, 0xf86fa85e
shl esi, 7
or esi, edx
mov edi, ebx
and edx, ebx
not edi
xor ebx, edi
or ebx, esi
xor edi, esi
rol edx, 0x1e
mov edx, edi
shr esi, 0x18
and edx, edi
jmp 0x46d174
inc dword [esp + 0x88]
sub esi, edi
sub edx, edi
add edx, 0xf87f3547
or esi, 0xf87f7b86
and edx, 0xf87fb3bd
or ebx, edx
and edi, ebx
jmp 0x46d3e9
jne 0x46b520
or esi, edi
xchg ebx, edi
or esi, ebx
add ebx, edi
add ebx, edi
xchg edi, esi
sub edx, 0xf8894d0a
or edx, edi
mov esi, edx
and edx, edi
or edx, ebx
jmp 0x46a8b0
mov ecx, dword [esp + 0x54]
mov ebx, 0xf894ae14
xchg edx, edi
or ebx, esi
rol edx, 0x12
xchg edx, ebx
add esi, ebx
jmp 0x46a6a0
add dword [esp + 0x54], eax
shl edx, 0x1e
not edx
neg esi
sub edi, edx
shr edi, 0x1a
xchg esi, ebx
sub ebx, edi
or esi, edx
jmp 0x46c0ff
add ecx, dword [esp + 0x50]
sub edx, ebx
neg esi
add edx, ebx
xchg esi, edi
add ebx, edx
bswap edi
and ebx, esi
or esi, 0xf8d16257
jmp 0x46ae27
mov dword [esp + 0x50], ecx
inc ebx
xor esi, 0xf8d1f7f7
inc edx
xor edi, 0xf8d275f3
mov ebx, esi
and edi, edx
xchg edx, edi
shr ebx, 8
sub ebx, esi
xor edi, esi
jmp 0x46c9c7
mov ecx, dword [ecx]
dec ebx
xchg ebx, esi
and ebx, 0xf8f4f758
dec ebx
and esi, edx
not ebx
and ebx, esi
add edi, 0xf8f61aed
ror ebx, 0x1c
ror edi, 0x1d
add edx, 0xf8f6c744
jmp 0x46b15e
mov ecx, dword [esp + 0x88]
add edi, esi
add esi, 0xf8fc5abf
and ebx, edi
shl edi, 0xb
sub edi, esi
neg edi
shl edx, 9
add edx, ebx
inc edx
xor edx, ebx
mov ebx, esi
shr edi, 6
mov ebx, 0xf8fecaec
jmp 0x46bb62
mul ecx
sub esi, ebx
neg edi
ror edx, 4
and esi, edx
mov esi, edi
xchg edi, ebx
xor ebx, esi
or esi, ebx
and edi, edx
neg edi
xchg edi, esi
add edx, 0xf90c4a67
jmp 0x46ae69
mov eax, 4
sub esi, ebx
sub ebx, edx
inc edi
shl edx, 2
mov ebx, edx
shr esi, 0xd
neg edx
and esi, edx
jmp 0x46b458
mov ecx, dword [ecx]
mov ebx, esi
neg edx
add ebx, esi
shl edx, 0x16
xor esi, 0xf91ab868
and ebx, 0xf91af712
mov ebx, 0xf91b3276
jmp 0x46a8da
mov dword [esp + 0x54], ecx
add edi, ebx
or edx, esi
add edi, edx
sub esi, 0xf9313ea9
sub ebx, edi
xor edx, esi
or edi, ebx
bswap esi
and ebx, 0xf9327c48
or edx, ebx
jmp 0x46c825
mov dword [esp + 0x54], ecx
or edx, esi
xchg esi, edi
xor esi, edx
sub esi, 0xf947385f
dec edi
inc edx
xchg edi, ebx
add ebx, edx
and edi, edx
jmp 0x46a668
mov ecx, dword [ecx]
dec esi
dec ebx
add ebx, edi
xor edx, esi
xor ebx, esi
jmp 0x46b838
rol eax, 8
and edx, ebx
sub edi, edx
add esi, edx
xor ebx, 0xf9676937
xchg ebx, esi
sub esi, edx
mov edx, ebx
xchg ebx, edx
ror edi, 0xb
ror esi, 0x12
ror ebx, 0x13
rol edx, 0x15
xchg edx, ebx
jmp 0x46df6c
mov ecx, dword [esp + 0x54]
and ebx, edx
add edx, esi
mov edi, esi
and edi, edx
or ebx, esi
mov edi, ebx
sub edi, edx
and edi, ebx
xor ebx, edi
or ebx, esi
and ebx, 0xf9715e07
add edx, esi
and ebx, 0xf971d47b
xchg esi, edi
jmp 0x46c460
add ecx, 0xc
xor esi, ebx
sub esi, edx
add edx, edi
ror edi, 3
mov ebx, 0xf978791f
and edx, edi
mov ebx, edx
jmp 0x46b02d
mov dword [esp + 0x54], 0
dec edx
add ebx, edx
shl ebx, 0xc
sub esi, edi
sub ebx, edi
rol esi, 0x18
xor esi, edx
add ebx, 0xf97ae033
dec esi
jmp 0x46c959
cmp eax, dword [esp + 0x40]
jmp 0x46b5b7
mov ecx, dword [esp + 0x84]
sub esi, 0xf98add6a
and edi, edx
mov ebx, 0xf98b5237
mov edx, esi
not ebx
add edi, esi
jmp 0x46a97b
mov ecx, dword [ecx]
and edx, edi
xor ebx, edi
xor edi, 0xf9ac0057
and ebx, 0xf9ac3c9c
and edi, edx
and ebx, esi
jmp 0x46b818
mov ecx, dword [ecx]
sub esi, edx
mov edi, 0xf9af211a
rol edx, 0x15
not edx
sub edx, esi
xchg edx, esi
add edi, edx
sub esi, ebx
jmp 0x46d0cf
mov ecx, dword fs:[ecx]
xor edx, edi
sub ebx, esi
or esi, edi
shl ebx, 9
shl ebx, 0x17
and esi, edi
mov esi, 0xf9b4e825
inc edx
ror edi, 0x14
jmp 0x46b37c
mov ecx, dword [esp + 0x54]
rol esi, 0xd
add esi, 0xf9e77964
neg edx
sub edi, esi
or edi, ebx
xor esi, ebx
or esi, edi
and edi, esi
xchg edi, edx
inc esi
mov edx, edi
mov ebx, 0xf9e9ed73
xor edx, esi
xor edx, ebx
jmp 0x46ba13
add dword [esp + 0x54], 0x78
mov ebx, edx
neg edi
sub edx, esi
and edx, ebx
xor edi, edx
add esi, ebx
rol ebx, 0xa
or ebx, esi
sub esi, ebx
mov edx, edi
or edi, edx
jmp 0x46d9f9
mov dword [esp + 0x40], ecx
nop
xchg edi, edx
xor ebx, esi
add esi, edi
jmp 0x46df89
mov ecx, dword [esp + 0x50]
and edx, edi
dec ebx
ror edi, 9
or edi, ebx
sub esi, edi
and ebx, 0xfa11e6c8
or edi, ebx
add ebx, esi
xchg edi, esi
jmp 0x46d827
mov ecx, dword [ecx]
xor esi, edx
and ebx, 0xfa34f34a
and edi, 0xfa353132
xor ebx, edi
xchg esi, edi
ror edi, 0x1a
and edi, edx
mov edx, esi
inc ebx
xor edx, edi
and ebx, edx
jmp 0x46c16b
sub esp, 0xd0
xor esi, edx
xor edi, esi
ror ebx, 0xa
bswap edx
sub ebx, edi
shr edi, 2
add edx, ebx
jmp 0x46dc87
add dword [esp + 0x54], ecx
sub esi, edi
xchg edx, edi
bswap edx
or edi, esi
shr edx, 0xd
mov esi, edx
mov esi, ebx
add edx, esi
or esi, edi
jmp 0x46dbb1
mov ecx, dword [ecx]
or edi, edx
sub edi, edx
add esi, 0xfa8e3e4b
bswap edx
add ebx, edx
add ebx, esi
add edx, edi
sub ebx, esi
jmp 0x46d484
mov dword [esp + 0x54], ecx
mov esi, edi
ror edx, 0x1d
and edx, ebx
and edx, ebx
sub esi, 0xfa90c739
rol esi, 1
bswap ebx
add ebx, edi
xchg edx, edi
jmp 0x46d680
mul ecx
xor esi, 0xfa9a7a06
mov esi, edi
shr ebx, 8
xor edi, ebx
dec edx
mov edx, edi
ror esi, 5
or edx, edi
add edx, esi
xchg esi, ebx
jmp 0x46b791
pop ecx
ror edx, 0x1d
or esi, 0xfaa83b2d
xor ebx, 0xfaa87618
bswap edi
sub ebx, edi
sub edi, esi
add edx, edi
sub esi, 0xfaa9b2e4
or ebx, 0xfaa9f1c5
xor edx, 0xfaaa2c6b
xchg esi, edi
mov edi, esi
mov ebx, edx
shl ebx, 0xb
jmp 0x46c202
mov ecx, dword [ecx]
mov ebx, edx
not edi
not ebx
ror ebx, 0xe
add edi, 0xfaacaeed
add edi, esi
sub edx, ebx
shl esi, 0x16
jmp 0x46bd86
add dword [esp + 0x84], 4
or ebx, esi
or edx, edi
mov edx, esi
nop
and ebx, edi
xchg ebx, esi
jmp 0x46c292
add ecx, 0x18
neg ebx
bswap edx
neg edi
xchg ebx, esi
or esi, edx
xchg edx, ebx
shl esi, 1
not ebx
and esi, edx
or ebx, edi
add ebx, esi
jmp 0x46bfe5
mov dword [esp + 0x84], ecx
xchg esi, ebx
add edx, edi
xchg ebx, esi
mov esi, edx
dec esi
or edi, ebx
add ebx, esi
jmp 0x46b520
jne 0x46afb5
xchg edx, edi
sub edi, esi
xor ebx, esi
sub edx, esi
xchg edi, edx
xchg edi, ebx
sub esi, edx
sub ebx, edx
add ebx, edi
xor edx, esi
xchg edx, ebx
mov esi, edx
neg edi
jmp 0x46d228
mov ecx, dword [esp + 0x54]
xor edx, ebx
shr ebx, 0x1e
neg ebx
mov edi, edx
add esi, edx
jmp 0x46bc3a
mov ecx, dword [esp + 0x50]
xchg ebx, edi
add edi, esi
add edi, ebx
shl ebx, 0x1e
sub edi, esi
xchg esi, ebx
or esi, ebx
xchg edx, esi
ror esi, 0x1b
add esi, edi
xchg ebx, edi
jmp 0x46cffc
add ecx, dword [esp + 0x54]
and edi, esi
dec ebx
xor edx, edi
and esi, edi
add esi, ebx
and edi, ebx
sub ebx, esi
bswap edi
xchg ebx, edi
mov edx, esi
mov esi, ebx
jmp 0x46c497
add ecx, 0x3c
or edi, ebx
ror edi, 0xa
neg esi
sub ebx, edi
and ebx, edx
sub ebx, edi
or edx, edi
bswap edi
and edx, esi
or ebx, 0xfb1c79f0
and edx, edi
jmp 0x46d260
mov ecx, dword [esp + 0x50]
or edx, esi
and esi, edx
and ebx, edi
ror esi, 0x12
sub ebx, 0xfb3d7a37
and edx, ebx
xor edx, 0xfb3df2fe
jmp 0x46d6a4
add ecx, dword [esp + 0x50]
and edx, ebx
and ebx, edi
rol edi, 2
add esi, ebx
add edi, 0xfb41ec18
sub edx, edi
add edi, esi
dec esi
or edx, ebx
bswap ebx
xor edx, ebx
shl edx, 0xa
jmp 0x46aeed
sub dword [esp + 0x54], 8
xchg ebx, esi
add edi, 0xfb53dfba
or edx, esi
and esi, ebx
xchg edx, edi
xor edi, esi
and ebx, 0xfb54f0a3
sub edi, 0xfb55398e
rol edx, 0x15
add ebx, 0xfb55a9e3
dec ebx
jmp 0x46c7ab
add dword [esp + 0x54], 0x20
xchg ebx, esi
inc ebx
mov edi, 0xfb5b5161
add edi, 0xfb5b8c71
xor ebx, edx
and esi, edx
or edi, esi
bswap ebx
mov esi, 0xfb5cc9a9
xchg edi, ebx
xor edx, ebx
sub edi, esi
jmp 0x46d585
ret
mov dword [esp + 0x88], 0
xchg ebx, esi
add edi, edx
xchg esi, edi
rol edi, 0xc
shr edx, 0xb
dec edi
jmp 0x46df02
add ecx, dword [esp + 0x88]
or ebx, edi
and esi, edi
ror ebx, 5
add esi, ebx
ror edi, 8
shl esi, 3
sub esi, edi
xor edi, esi
and edi, esi
jmp 0x46bbe6
mov dword [esp + 0x84], 0
xchg edx, esi
or esi, edx
and edi, edx
rol edi, 6
and ebx, 0xfef89de5
ror edx, 0x1f
sub edi, 0xfef9263f
or edx, edi
shr ebx, 6
sub edi, ebx
and ebx, edi
inc edi
xor esi, ebx
jmp 0x46b2ac
inc ecx
or edi, esi
ror edx, 6
xor ebx, edx
and edi, 0xfeff32a4
mov ebx, edx
mov edi, ebx
mov edi, edx
sub edi, esi
add edi, edx
jmp 0x46b1cb
mov ecx, 0x30
sub esi, ebx
sub edx, 0xff00f3dd
not esi
sub esi, edx
ror ebx, 1
bswap esi
dec edx
add esi, ebx
sub edi, esi
ror edx, 0x13
shl edi, 0x15
jmp 0x46c4e0