Function at 0x46e5f2
Capabilities:
Encrypt data using chaskey

Disassembly:
add edi, dword [esp + 0x2c]
add esi, ecx
xor ecx, 0x6fe1ff08
and edx, ecx
sub edx, ebx
or edx, 0x6fe2adec
add esi, edx
and edx, esi
or esi, edx
or ecx, edx
not ecx
and esi, edx
jmp 0x46d2f9
mov edi, dword [edi]
mov edx, ebx
or ecx, edx
xor ebx, 0x6ffce4c0
xchg edx, ebx
rol ecx, 0xa
jmp 0x46bf73
add edi, dword [esp + 0x64]
mov ebx, ecx
dec ebx
ror esi, 0x1d
and edx, ebx
and ecx, 0x701043cf
jmp 0x46cf16
add dword [esp + 0x34], edi
add ebx, ecx
add edx, ebx
rol ebx, 0x1d
and ecx, edx
jmp 0x46e3ef
add dword [esp + 0x34], eax
xor esi, 0x7019e10e
or esi, 0x701a19ad
sub ecx, 0x701a50f7
or ebx, edx
shr ebx, 0xe
not esi
xchg ecx, ebx
ror edx, 0x1a
rol edx, 6
xchg ebx, edx
shr ebx, 0x1b
inc ecx
jmp 0x46b631
mov edi, dword [esp + 0x34]
xor ebx, edx
and ebx, edx
xchg ecx, edx
sub ebx, ecx
jmp 0x46b7a5
xor al, byte [edi]
mov edx, ecx
shr ebx, 0x1d
shl esi, 0x1c
or edx, ecx
add ecx, esi
sub ecx, 0x702edd59
xor edx, esi
mov ebx, 0x702fdfe9
sub edx, ecx
jmp 0x46d352
add edi, dword [esp + 0x34]
shl ecx, 0x11
neg ebx
jmp 0x46d60d
mov edi, dword [edi]
or esi, 0x70408c4e
shl ebx, 0x11
xchg esi, ebx
sub edx, esi
xchg edx, esi
sub ecx, 0x7041a549
inc edx
mov ebx, esi
bswap edx
add ebx, 0x70428c74
sub edx, 0x7042c49d
bswap edx
mov ebx, edx
add edx, ebx
mov ebx, esi
jmp 0x46c420
inc edi
inc esi
or edx, esi
xor ecx, 0x704fbd1b
shr esi, 0x1c
shl edx, 0x15
mov edx, ecx
dec esi
shl esi, 0x1b
bswap esi
jmp 0x46d584
mov dword [esp + 0x2c], 0
mov edx, ecx
inc ebx
or esi, edx
neg ecx
inc ebx
dec ebx
xor edx, ecx
or edx, ecx
mov ebx, ecx
sub esi, edx
jmp 0x46bb5f
jne 0x46b67c
sub ecx, edx
xchg edx, ebx
xor ecx, ebx
xor esi, ecx
add edx, 0x70724bc9
mov ecx, esi
xchg ecx, ebx
jmp 0x46cb69
mov edi, dword [esp + 0x2c]
or ecx, ebx
rol edx, 0x18
ror ebx, 9
sub ebx, 0x70792213
or ecx, edx
add esi, ecx
not esi
xchg edx, ecx
and edx, 0x707a437e
xor ebx, esi
and ecx, esi
and ebx, 0x707ae666
or ecx, edx
xor esi, edx
jmp 0x46c469
mov dword [esp + 0x64], edi
or edx, ebx
nop
and ecx, esi
mov ecx, 0x707c4130
shr esi, 0x16
and ebx, 0x707cbacd
and edx, 0x707cf553
jmp 0x46c09c
mov dword [esp + 0x94], 0
xchg ecx, ebx
add ebx, ecx
add ecx, edx
sub edx, 0x707ddd59
not esi
jmp 0x46c98c
add edi, 0x18
xchg ebx, edx
and ebx, edx
not ebx
xchg esi, ecx
sub esi, ebx
jmp 0x46dedd
mov edi, dword [esp + 0x34]
shl ebx, 0x10
xchg esi, ebx
add ebx, ecx
or esi, edx
or ecx, edx
mov esi, ecx
and ecx, edx
xor ecx, esi
ror esi, 9
mov esi, edx
mov edx, esi
or ebx, 0x709693f6
xor esi, ebx
jmp 0x46c612
mov edi, dword [esp + 0x94]
xchg edx, esi
sub edx, ecx
mov ebx, esi
not ebx
add edx, ecx
inc ebx
jmp 0x46d7ba
mov edi, dword [edi]
xor ebx, esi
rol edx, 4
bswap ebx
and ebx, edx
xor ebx, 0x70a39e74
ror ecx, 3
add esi, ebx
rol ebx, 0x1a
and edx, esi
or ebx, esi
sub ebx, 0x70a4f44b
jmp 0x46e0f4
mov dword [esp + 0x34], edi
sub esi, ecx
mov ecx, esi
mov edx, esi
xor edx, 0x70b53180
add ecx, 0x70b56865
or edx, ecx
shl esi, 3
mov esi, edx
jmp 0x46c9b9
mov eax, 2
rol edx, 5
sub ecx, edx
add ecx, ebx
or esi, ecx
and edx, ecx
add ebx, 0x70bc5520
sub esi, ecx
or esi, 0x70bcc553
mov ecx, ebx
jmp 0x46bb04
add edi, dword [esp + 0x64]
add edx, ebx
bswap edx
or esi, edx
nop
mov ebx, 0x70d42be5
nop
or ecx, edx
add ebx, edx
xchg ecx, ebx
mov edx, esi
xchg ecx, ebx
add edx, ebx
sub esi, 0x70d68de4
jmp 0x46d379
mov edi, dword [esp + 0x64]
not edx
xor edx, ecx
and esi, ecx
xor ecx, edx
or esi, edx
xor esi, 0x70e7e278
add ebx, edx
or ecx, edx
xchg esi, ebx
jmp 0x46da81
add edi, dword [esp + 0x64]
mov edx, ecx
add edx, esi
add ebx, ecx
sub esi, ebx
bswap edx
xchg esi, ecx
add ebx, esi
add ebx, edx
mov esi, 0x712988b0
sub edx, ebx
jmp 0x46dcd7
mul edi
and edx, esi
mov ebx, 0x712c4328
and esi, ecx
add ebx, edx
add esi, edx
mov ecx, edx
and edx, ebx
dec edx
mov edx, ecx
nop
jmp 0x46e4ae
mov edi, dword [edi]
or ebx, esi
sub edx, ebx
or esi, ecx
rol ecx, 0x1c
add esi, ecx
mov esi, ebx
xor ebx, edx
jmp 0x46deef
mov edi, dword [edi]
mov ecx, edx
and ebx, edx
and ebx, esi
not edx
shr esi, 0x17
xor ecx, ebx
xchg ebx, edx
xchg ecx, edx
jmp 0x46bb9e
mov edi, dword [esp + 0x34]
add edx, ebx
sub esi, ebx
or ebx, ecx
bswap ebx
and esi, ebx
add ecx, 0x715c44ce
jmp 0x46d185
add edi, 0xc
sub esi, ebx
add ecx, esi
xor ebx, 0x7172a872
or esi, ebx
and ebx, edx
sub esi, ecx
or esi, 0x71744304
xor edx, ecx
mov esi, 0x7175a121
mov edx, ecx
mov edx, ecx
jmp 0x46cb3c
mov dword [esp + 0x94], edi
sub esi, edx
ror esi, 0x11
sub ebx, esi
add edx, 0x71796c09
and ecx, esi
bswap edx
or ebx, edx
add edx, ebx
or ebx, esi
mov edx, ecx
jmp 0x46d100
mov dword [esp + 0x64], 0
mov edx, 0x71843e9b
xor ebx, ecx
or esi, edx
sub esi, ecx
shl edx, 0x1b
and edx, ebx
add ecx, 0x7185a0f7
and ebx, esi
shr ecx, 0xe
mov ecx, esi
jmp 0x46cac0
mov edi, dword [esp + 0x64]
mov esi, 0x71869459
and esi, 0x7186d800
jmp 0x46b4f1
mov dword [esp + 0x34], 0
rol edx, 0xb
inc ecx
neg edx
xor edx, ecx
or ecx, esi
xchg esi, ebx
mov ebx, edx
inc ebx
xor edx, 0x719d11dc
xchg esi, edx
sub edx, ecx
or ecx, 0x719db93a
not edx
and ebx, edx
jmp 0x46d150
mov edi, dword [edi]
xchg edx, esi
xor ebx, edx
add ebx, 0x71a38bf2
sub ebx, 0x71a3c299
shr edx, 0xe
dec ebx
xor ebx, edx
sub edx, ecx
neg ebx
xchg edx, esi
sub edx, 0x71a559c7
xor esi, ecx
bswap ecx
jmp 0x46d92c
pop edi
add esi, ebx
and esi, 0x71a64920
add esi, edx
and esi, 0x71a6b710
ror esi, 0xb
inc edx
or ebx, edx
dec edx
and esi, ecx
xchg edx, esi
shl ebx, 0x1e
mov ecx, edx
jmp 0x46e59b
mov edi, dword fs:[edi]
mov esi, edx
add ecx, ebx
xor edx, esi
or esi, ebx
bswap ebx
jmp 0x46c87f
mov edi, dword [esp + 0x64]
ror ebx, 0xd
bswap ebx
ror edx, 0xa
or ecx, edx
jmp 0x46b69e
sub dword [esp + 0x34], 8
rol ecx, 1
mov ecx, 0x759ed227
xor esi, edx
and ecx, 0x759f4122
xor ebx, esi
add edx, esi
sub ebx, edx
nop
sub esi, ecx
sub ebx, esi
xor edx, esi
sub esi, edx
add ecx, ebx
jmp 0x46c70c
mov dword [esp + 0x34], edi
neg ecx
xchg ecx, esi
or edx, ebx
add esi, edx
dec edx
add ebx, esi
xor ecx, edx
not ebx
xor esi, 0x75a521e4
jmp 0x46e6a2
ret
inc dword [esp + 0x2c]
add esi, ecx
bswap ebx
and edx, ecx
add esi, 0x75c55625
xor esi, 0x75c593c3
add edx, ecx
sub esi, edx
xor esi, ebx
jmp 0x46e56c
mov edi, dword [esp + 0x34]
sub ecx, esi
sub ebx, esi
mov edx, 0x75c8445e
not edx
bswap ecx
jmp 0x46b374
mov dword [esp + 0x104], edi
dec edx
mov ebx, ecx
rol ecx, 0x15
and ebx, edx
or esi, ebx
mov ecx, 0x75ca378a
and ebx, ecx
or esi, ebx
jmp 0x46d3fb
mov edi, dword [edi]
mov ecx, edx
add edx, esi
and edx, ecx
add edx, esi
or ecx, esi
mov ecx, esi
xor esi, ecx
or edx, ebx
and ecx, edx
mov ecx, ebx
sub edx, ecx
shr edx, 0x18
xor esi, 0x75cfe024
and ebx, 0x75d036f4
jmp 0x46b4a9
xor eax, eax
add ebx, ecx
mov ecx, edx
dec ecx
add edx, ecx
bswap esi
sub esi, ecx
or esi, ecx
add ecx, esi
inc edx
xchg edx, esi
mov ecx, edx
sub ebx, ecx
jmp 0x46b67c
push edi
and ebx, esi
xchg ecx, edx
mov edx, ecx
mov esi, edx
add ecx, esi
and edx, 0x75dddf93
jmp 0x46d225
mov eax, 4
mov edx, esi
or ebx, ecx
or ecx, esi
or esi, ecx
shl esi, 6
not ebx
mov ebx, 0x75eae211
jmp 0x46e73a
rol eax, 8
xchg esi, edx
or esi, 0x75efe7b7
bswap esi
xchg esi, ecx
add ebx, edx
shr edx, 7
rol edx, 0xd
rol ebx, 0xa
shr ecx, 8
shl esi, 0x14
and ecx, edx
jmp 0x46b875
mov dword [esp + 0x94], edi
add ecx, ebx
rol ebx, 0x15
or ecx, esi
or ebx, edx
xchg esi, edx
add esi, 0x75f35027
not edx
xor ecx, 0x75f3c5a8
inc edx
or esi, ebx
xchg ebx, ecx
jmp 0x46be2c
mov edi, 0x30
and ecx, edx
xor edx, esi
or edx, ecx
and ebx, edx
neg ecx
xchg ecx, edx
jmp 0x46cbf8
add edi, dword [esp + 0x64]
or ebx, esi
add esi, ebx
or ecx, ebx
mov ebx, esi
sub ebx, 0x760e9965
sub edx, ecx
jmp 0x46d242
cmp byte [edi], 0
jmp 0x46ba8e
mov edi, dword [edi]
xchg ebx, ecx
sub ebx, 0x762482db
mov ebx, esi
xor ebx, edx
rol edx, 8
or edx, ebx
or ecx, edx
xchg edx, ecx
xor esi, ebx
dec ecx
or edx, ebx
rol ebx, 0x16
sub esi, 0x76279256
nop
jmp 0x46bdc5
mov edi, dword [edi]
and edx, esi
not edx
mov ebx, ecx
sub ebx, ecx
and ebx, ecx
sub esi, ecx
xchg edx, ecx
or ebx, esi
ror esi, 4
bswap ecx
xchg ecx, ebx
not ebx
inc ebx
jmp 0x46d4e2
jne 0x46d100
xchg ecx, ebx
and ecx, esi
and esi, ebx
mov ebx, edx
and ecx, esi
xor ecx, esi
xor edx, esi
shl ecx, 0x13
not edx
jmp 0x46e8cc
add edi, 0xc
or edx, 0x7662818f
xor ebx, edx
and edx, ebx
neg edx
and esi, ebx
mov edx, 0x7663f349
jmp 0x46d9ed
mul edi
xchg esi, ebx
add ebx, esi
not edx
and edx, ecx
xchg ebx, edx
mov esi, 0x766595b7
xor ebx, esi
mov edx, esi
or ecx, ebx
shl edx, 0x18
or edx, ecx
xchg ecx, ebx
xor ecx, edx
jmp 0x46b55d
mov edi, dword [edi]
mov esi, ecx
add esi, edx
xor esi, ecx
xchg edx, ebx
xor ecx, 0x76720de1
rol esi, 0x18
mov ebx, 0x76727f86
shl ebx, 7
add edx, esi
bswap ebx
add ebx, esi
xor edx, esi
ror ecx, 0xc
jmp 0x46de89
add edi, 0x3c
and ebx, 0x767aa491
shl ebx, 0xf
dec edx
shr ebx, 0x1e
or esi, ecx
mov edx, 0x767c1645
jmp 0x46bd80
add esp, 0x164
xor ebx, 0x76a6283b
neg ecx
add esi, 0x76a69d7d
or esi, ebx
add ecx, 0x76a715b6
sub ebx, 0x76a74cca
mov ebx, 0x76a78726
jmp 0x46d007
mov edi, dword [edi]
neg esi
or ebx, edx
mov esi, ecx
not edx
sub edx, ebx
xor edx, ebx
and edx, esi
neg esi
add esi, ebx
mov ecx, 0x76c59de1
not ecx
and ebx, ecx
jmp 0x46c664
mov edi, dword [edi]
inc esi
xor ebx, edx
xchg ecx, esi
xor edx, ecx
and edx, ecx
xchg ebx, edx
jmp 0x46bb3a
add edi, dword [esp + 0x64]
inc ebx
rol edx, 0x13
xor esi, ecx
inc edx
and ecx, 0x76cb902c
mov ecx, esi
sub esi, edx
mov esi, edx
xchg ecx, edx
ror esi, 8
mov esi, edx
shl esi, 0x18
xor esi, 0x76cddb4b
jmp 0x46c8ca
mov dword [esp + 0x34], edi
rol ebx, 0xb
xor esi, edx
inc esi
sub ecx, ebx
ror edx, 0x1a
and ebx, 0x76f374fd
or ecx, edx
or ecx, edx
jmp 0x46e218
add dword [esp + 0x34], 0x78
add esi, ecx
add esi, edx
xor ebx, edx
mov edx, ebx
add esi, ecx
add edx, ecx
add esi, 0x7706fc3d
not ecx
xor esi, 0x7707b9ae
mov esi, ebx
add ecx, esi
jmp 0x46cc4e
add dword [esp + 0x34], 0x20
xchg ebx, ecx
and esi, ebx
or esi, ebx
and ecx, 0x772676c4
rol edx, 0x10
and ecx, esi
or esi, edx
jmp 0x46bcbe
mov dword [esp + 0x2c], eax
and edx, ecx
mov ebx, edx
xchg ebx, edx
or ecx, ebx
sub edx, ecx
ror ecx, 0x1c
mov esi, ecx
jmp 0x46cee8
add dword [esp + 0x94], 4
sub ebx, edx
and esi, ebx
and ebx, 0x7740af9d
xor esi, ebx
ror ebx, 5
mov esi, ebx
and esi, edx
dec esi
nop
add edx, ebx
and ecx, ebx
and esi, edx
not edx
mov ecx, 0x77431ff3
jmp 0x46bd69
cmp eax, dword [esp + 0x104]
jmp 0x46d889
sub esp, 0x164
and esi, 0x774c4b94
and ecx, edx
xor ecx, 0x774cc1be
add esi, ebx
ror ebx, 0x1d
mov edx, ebx
not esi
add ebx, edx
shr ebx, 4
rol edx, 0xb
xchg edx, esi
add edx, esi
xor edx, ebx
jmp 0x46b985
mov edi, dword [esp + 0x94]
sub edx, ecx
xor ecx, esi
mov ecx, 0x782b51e4
sub edx, ebx
or esi, ebx
add ebx, esi
sub esi, ecx
xchg ebx, edx
jmp 0x46b207
movzx edi, word [edi]
sub ebx, esi
bswap ebx
and esi, edx
xor ecx, edx
mov ebx, 0x78493815
sub ebx, 0x78497229
and ebx, 0x7849acda
add edx, ebx
and ecx, ebx
jmp 0x46d947
add dword [esp + 0x34], 4
shr ebx, 0x1b
bswap esi
add ecx, edx
add esi, edx
add ebx, edx
add ecx, edx
and edx, ebx
jmp 0x46d137