Function at 0x495838
Capabilities:
Encrypt data using chaskey

Disassembly:
add esi, 0x3c
or edx, ebx
and edx, ecx
xor edi, 0xbdee40f5
bswap ebx
xchg edx, ebx
sub ebx, ecx
shr edi, 0x1c
add ecx, edi
xor edi, edx
dec edi
jmp 0x495146
pop esi
xor ecx, edi
mov edx, 0xbffa8c0c
add ebx, edx
xchg ecx, edx
or ebx, ecx
mov edi, ebx
jmp 0x495d93
jne 0x495ce5
xor ebx, edx
sub edx, ecx
and edx, edi
add edi, ecx
add ecx, edi
mov edx, edi
mov ecx, 0xc00d0970
xor edi, 0xc00da019
and ebx, edx
sub edi, 0xc00ef724
jmp 0x4943e4
mov dword [esp + 0x48], 0
and edx, ecx
inc ebx
xor edx, 0xc02b6e8a
dec edi
neg ebx
sub edi, ebx
sub ebx, ecx
sub edi, ecx
not edx
jmp 0x49669c
add dword [esp + 0xc4], 0x78
bswap ebx
sub ebx, edx
mov ecx, 0xc0615c64
sub ebx, edx
xor ecx, 0xc0628712
shr edi, 0x1b
and ebx, edx
jmp 0x495490
mov esi, dword [esi]
sub edx, ebx
add ebx, 0xc0929807
and ecx, edi
sub edi, ebx
xchg ebx, ecx
or edx, edi
or edi, edx
sub ecx, edi
jmp 0x496c0f
mov esi, dword [esp + 0x48]
inc ecx
add ebx, edi
bswap edx
or ecx, ebx
xor ebx, edx
dec edx
mov ebx, ecx
xor edx, 0xc0bc4d7b
neg ebx
or edi, edx
or edx, edi
and ecx, edi
jmp 0x494321
xor eax, eax
mov ebx, 0xc0f67ccd
xor edi, 0xc0f72d18
mov ebx, edx
xchg ecx, edi
and ebx, ecx
xor edi, ebx
or edx, ebx
jmp 0x495ce5
add esi, 0x18
add edx, edi
sub edx, ecx
jmp 0x494d71
ret
mov esi, dword [esi]
add ebx, 0xc198e2d5
add edi, edx
shl ecx, 2
inc ebx
and ecx, 0xc19b7198
xchg ecx, edx
add edi, ebx
jmp 0x4956e3
mul esi
bswap edx
add edi, ebx
or ebx, 0xc1b0be89
xor ebx, ecx
sub edx, ebx
xor edi, edx
mov edi, ecx
dec ebx
mov ebx, ecx
jmp 0x4968ac
mov esi, dword [esi]
or ebx, edi
and ecx, ebx
shr edi, 7
or ebx, ecx
neg ecx
not edx
and edx, ecx
and edi, 0xc1c703a0
mov edi, 0xc1c7a0f6
and ebx, 0xc1c84862
mov edi, edx
jmp 0x494eb4
push esi
nop
xor edx, ecx
bswap ebx
nop
or edx, edi
xchg edx, ebx
and edx, ebx
xor ecx, ebx
mov ecx, 0xc1cf7308
jmp 0x494923
cmp byte [esi], 0
jmp 0x494440
mov esi, dword [esp + 0xc4]
rol ebx, 0x15
or ebx, ecx
and ebx, edi
mov ecx, 0xc1dc85d3
add edi, ebx
neg ecx
and ecx, 0xc1de6652
or ebx, edi
add ecx, edx
xor edi, ecx
add ecx, edx
or ebx, edx
sub ecx, 0xc1e252c6
sub edi, edx
xor ecx, ebx
xor edx, ebx
jmp 0x494c92
add dword [esp + 0xc4], 0x20
xor ecx, 0xc1f8b8d5
or edi, ecx
and ecx, edx
add edi, ebx
mov edx, 0xc1fb174a
add edi, ebx
xor ecx, edi
xchg ecx, ebx
rol ecx, 7
jmp 0x494df5
mov dword [esp + 0x48], esi
or edx, ebx
shl edi, 0x1d
xchg edx, edi
xor ebx, edi
or edi, ebx
xchg ebx, edi
xchg ecx, edi
sub edx, 0xc202b86e
neg edi
jmp 0x4947e2
mul esi
shl ebx, 6
sub ebx, 0xc208f013
sub edi, edx
xchg edx, ecx
xor edx, 0xc20b02d5
not ecx
xor ecx, ebx
or edx, ecx
xchg ebx, ecx
add ebx, ecx
add edi, edx
dec edx
add ebx, edi
jmp 0x495aae
add esi, dword [esp + 0x48]
neg ebx
dec ebx
sub ecx, edx
and edx, 0xc224f8c6
xor edx, edi
jmp 0x49566f
mov esi, dword [esp + 0x84]
xchg ecx, edi
mov ecx, 0xc2306f32
or ecx, 0xc23105c9
mov edx, edi
not edx
or ebx, edx
mov ecx, 0xc23387f1
or ebx, ecx
sub ecx, edi
jmp 0x494701
mov esi, dword [esi]
not edx
xor ecx, 0xc23d5dff
rol edi, 0x10
and ebx, edx
not edx
and edi, ecx
mov ebx, edx
inc edi
mov ebx, 0xc242343e
add ebx, ecx
and edi, ebx
and ebx, ecx
jmp 0x49591f
add dword [esp + 0xc4], 4
dec edi
bswap edi
xor ebx, ecx
xor edi, 0xc26eb8ca
rol ecx, 1
jmp 0x495feb
mov esi, dword [esi]
or ebx, ecx
xchg edx, ecx
and edi, edx
or edi, ecx
inc edx
sub edi, ecx
sub ebx, edx
xor ecx, ebx
jmp 0x49580e
movzx esi, word [esi]
neg edi
and ecx, edi
mov ecx, 0xc27cf335
xchg ecx, edx
ror edi, 0x12
ror ebx, 5
shl edi, 0x18
inc edi
jmp 0x494ef0
mov esi, dword [esi]
mov ebx, edx
shr ebx, 0x1b
xor ebx, edi
mov ebx, 0xc2830451
and ebx, edi
or ebx, 0xc2844ff3
not ecx
add ebx, edi
xor ecx, 0xc2866fb9
xor edx, 0xc2871bf8
mov edx, ecx
add edx, edi
or ecx, ebx
jmp 0x496681
mov esi, dword [esi]
neg edi
neg edx
sub ecx, edx
add ecx, 0xc2a81aef
shl edx, 9
sub edi, 0xc2a995ac
mov edi, ebx
neg ecx
or edi, edx
shl ecx, 0x1b
xchg ebx, edi
shr ecx, 0x14
jmp 0x4957c6
rol eax, 8
xchg edx, ecx
mov ebx, 0xc2bf9027
jmp 0x4958c8
sub dword [esp + 0xc4], 8
and ebx, ecx
neg ebx
sub ebx, 0xc9ec9719
sub ebx, 0xc9ed2dfa
bswap edx
or ecx, 0xc9ee548c
nop
add edx, 0xc9efa24e
jmp 0x496208
mov esi, dword [esp + 0x48]
mov edi, ebx
neg edx
add ecx, 0xc9fccb5b
add edi, edx
rol edi, 7
mov ecx, ebx
jmp 0x496589
add esi, 0xc
xor ecx, edx
sub edi, ecx
xor edx, 0xca21472b
shl edi, 0x17
mov ebx, edx
xchg ebx, edx
add edx, ebx
add edi, ecx
and edi, ebx
jmp 0x49643f
mov dword [esp + 0xc4], esi
mov edx, ebx
bswap edx
and ebx, 0xca55f4dd
neg edx
mov ebx, edi
xor edx, 0xca57f3cc
jmp 0x496348
inc dword [esp + 0xd4]
add edx, edi
xor ebx, 0xca596283
add ebx, ecx
sub ecx, edi
mov edi, edx
xor edx, 0xca5bdba4
dec edx
jmp 0x495ad4
add esi, dword [esp + 0x48]
xor ecx, ebx
or edx, ecx
inc ebx
mov edx, edi
sub ecx, edx
jmp 0x496aa4
mov dword [esp + 0x84], esi
add ecx, edi
xor ecx, edi
or ebx, 0xca6a3d4c
or edi, edx
mov edi, 0xca6b7bf6
dec edx
and edx, edi
shl edi, 0x1d
mov edi, ecx
jmp 0x49607a
add esi, dword [esp + 0x48]
sub ebx, edx
add edx, ecx
bswap ecx
or ecx, edx
shl ecx, 0xa
mov ebx, 0xca8f0717
not ecx
xor edx, ebx
shr edx, 0x1e
jmp 0x49660e
mov dword [esp + 0xc4], esi
ror edx, 0x10
xor ecx, edi
mov edi, 0xca93069c
and edi, 0xca93aaa3
not edi
mov edi, edx
jmp 0x496800
mov dword [esp + 0xc4], esi
mov ebx, ecx
ror edx, 0xa
xor edx, ebx
and ebx, edx
add ecx, edi
add ecx, edi
xchg ebx, ecx
shr ecx, 0x11
xchg edx, edi
xchg ebx, edx
sub edi, edx
shl edi, 0x1e
rol ebx, 0xd
jmp 0x49461c
sub esp, 0xdc
sub ecx, edi
not ecx
or edx, ecx
and edx, ecx
mov edx, ebx
sub ebx, ecx
mov edi, edx
xor edx, ebx
neg ebx
mov edx, 0xcaaa9162
xchg ecx, edx
dec ebx
and edx, ecx
jmp 0x496ad0
mov dword [esp + 0x64], esi
xor ecx, 0xcab18158
add edi, ebx
xor edi, ebx
xor edx, ecx
add edx, ecx
add edx, edi
and ebx, ecx
shl edx, 5
or edx, 0xcab62754
xor ecx, 0xcab6ae93
jmp 0x496856
inc esi
xor edi, ebx
dec edx
or edx, 0xcabf8b36
add ebx, edx
sub edi, edx
xor edi, ecx
and edi, ecx
xor ecx, edx
and edx, ebx
ror ecx, 0x1c
add edi, edx
or ecx, edx
add edx, edi
and ecx, ebx
add edx, 0xcac717d8
rol ecx, 0x1a
jmp 0x494ded
add esi, dword [esp + 0x48]
shl edi, 0x1a
sub ebx, edi
xor ecx, 0xcad08bdd
shl ebx, 5
xor edx, ebx
jmp 0x4956f8
add esi, dword [esp + 0xd4]
sub ecx, 0xcadc575d
add edi, ecx
xchg edx, ecx
add edi, edx
add ebx, ecx
xor ebx, edx
mov edx, ebx
mov ecx, edx
jmp 0x496b4f
add dword [esp + 0xc4], eax
and ebx, ecx
and edx, ebx
neg ecx
add ecx, 0xcb140ab0
sub edi, ebx
mov edx, 0xcb15360c
shl ebx, 0xd
sub edx, ecx
add edx, edi
jmp 0x496480
add dword [esp + 0x84], 4
shr edi, 0x13
and edx, ebx
xor ecx, edx
and edx, 0xcb194adc
sub edi, ecx
nop
xor ecx, 0xcb1b2a7e
sub edx, edi
or ebx, ecx
jmp 0x494fc1
mov esi, dword fs:[esi]
sub edi, ebx
neg ebx
add edx, 0xcb4ad7d0
mov ecx, edx
xor edi, 0xcb4c381a
xor ecx, 0xcb4cd4ae
shr edi, 0xc
rol ecx, 0x1a
jmp 0x495561
xor al, byte [esi]
xor ebx, edx
sub ebx, edx
ror ecx, 0x1b
shl edx, 9
shr ecx, 0x10
bswap ebx
and ecx, ebx
xchg edi, edx
and ebx, edx
or edx, ecx
neg ecx
dec ecx
ror ebx, 0xa
xor ecx, edi
or edi, 0xcb8758d7
shr ecx, 0x10
jmp 0x4952bc
cmp eax, dword [esp + 0x64]
jmp 0x496228
add esi, 0xc
or ecx, edx
inc edi
xor ecx, ebx
or edi, 0xcbdcab7a
xor ebx, edi
sub ecx, ebx
mov edi, edx
and edx, edi
rol edx, 0xd
xor ebx, 0xcbe03edd
jmp 0x496957
mov esi, dword [esp + 0xd4]
not edx
xchg ebx, edx
jmp 0x494d0e
mov esi, dword [esp + 0xc4]
or ebx, edi
and edx, edi
add edx, 0xcc0946bc
xchg edi, edx
or ebx, ecx
and edx, edi
or ebx, edx
xor ecx, edx
jmp 0x495006
mov eax, 2
add ecx, edx
add edx, ecx
neg ebx
sub edx, ebx
add edi, edx
mov edx, ebx
and ebx, edx
or ebx, ecx
add edx, ecx
xor ebx, 0xcc2623dd
xchg edi, ecx
add ecx, edi
sub edx, 0xcc27e930
add edi, 0xcc2892ba
xchg edx, ecx
jmp 0x495fb5
mov dword [esp + 0x84], 0
or edx, edi
bswap edx
and ebx, 0xcc506dfa
inc edi
xor edi, edx
xor edx, 0xcc526cb1
or edi, 0xcc532ed1
sub ecx, edi
bswap ebx
sub edx, ebx
and ecx, edx
jmp 0x4944ff
mov esi, dword [esp + 0xc4]
sub edi, 0xcc6772b1
xchg edi, ecx
dec ecx
or edi, 0xcc69770b
xor ecx, edx
ror ebx, 9
jmp 0x496776
jne 0x49568f
mov ebx, 0xcc6bc9cc
inc edi
neg edx
or ebx, edi
xor edi, edx
dec edx
add edx, edi
rol edx, 2
xchg edx, edi
jmp 0x4950fe
mov esi, dword [esp + 0x84]
xor edx, edi
add ebx, edi
sub ebx, 0xd4dec087
mov ebx, edx
neg ebx
shl ecx, 0x16
add edx, edi
jmp 0x49597b
mov esi, dword [esi]
shl edx, 0x1c
or edx, ebx
xor edx, ecx
xor edx, ecx
sub edi, ebx
shr ecx, 0x15
sub ecx, 0xd50dd079
inc edi
or ecx, edi
and edx, ebx
sub ecx, edx
or edi, 0xd510d129
or edi, ebx
xchg ebx, ecx
jmp 0x495ee4
mov esi, dword [esp + 0xc4]
xchg ebx, edx
or edx, ecx
mov edx, 0xd5182d01
jmp 0x496b63
add esi, dword [esp + 0xc4]
inc ecx
or edx, 0xd5460e82
xor edx, edi
mov ebx, 0xd5479550
and edi, edx
neg edi
jmp 0x49523e
add esp, 0xdc
sub edi, ecx
inc ecx
xor edx, ebx
sub edx, edi
bswap ebx
xor edi, edx
sub ecx, edx
jmp 0x4949ac
mov esi, dword [esi]
xchg ecx, edi
ror edx, 0xa
bswap ebx
add edi, edx
bswap edi
sub edi, ebx
and ebx, ecx
add ecx, edx
shl edi, 0x12
jmp 0x494987
mov dword [esp + 0xc4], 0
xchg edx, ebx
sub ecx, edx
or ecx, edx
and edi, 0xd575ef0a
jmp 0x495874
mov esi, dword [esi]
shl ecx, 0x16
xor edi, ecx
or ecx, ebx
rol edx, 7
nop
sub ebx, edx
xor edi, ecx
or ecx, edx
or ecx, edx
and ecx, 0xd5e5ba41
jmp 0x494f74
mov esi, dword [esp + 0x48]
add ecx, 0xd5fb7f24
mov ecx, edi
rol ebx, 0xc
inc ebx
xor edi, edx
and edi, edx
add ecx, 0xd5ff9e6d
jmp 0x496a4d
mov esi, 0x30
and ebx, edx
xor edx, ecx
sub edi, 0xd60af521
and edi, ecx
mov ebx, 0xd60c1ca6
sub edx, 0xd60ccc7c
shr edx, 0xb
xor ecx, edx
jmp 0x495be1
mov dword [esp + 0xd4], eax
and edx, edi
or edi, 0xd6168d24
inc ebx
sub ecx, ebx
sub ecx, edx
mov edi, edx
add edx, 0xd619bd0d
bswap edx
or edx, ebx
jmp 0x495424
mov esi, dword [esi]
sub edi, edx
shr ebx, 0x13
sub ecx, edx
and edx, ecx
sub edx, edi
or ecx, 0xd6460d7b
xor edi, edx
mov ecx, edx
shl ebx, 8
mov ebx, edi
and ecx, ebx
xor ebx, ecx
or edx, 0xd64ae07b
jmp 0x495179
add dword [esp + 0xc4], esi
or edi, ecx
xor edx, ebx
mov ebx, edx
or edi, ebx
sub edx, 0xd6785d35
mov edi, ebx
xchg ecx, edx
and ecx, 0xd67a6b00
jmp 0x494e8d
mov dword [esp + 0x84], esi
and edx, ebx
add ebx, ecx
xor edi, ecx
sub ecx, 0xd6869d7e
add ecx, edi
shr ecx, 0x11
sub edx, 0xd6886624
add edx, ecx
or edi, ecx
neg edx
sub edx, edi
dec ebx
jmp 0x49568f
mov dword [esp + 0xd4], 0
or edx, ebx
xor ecx, ebx
sub edx, ebx
add ebx, 0xd68e2852
add ecx, edx
or edx, 0xd68fbc63
xchg ebx, edx
sub ebx, ecx
jmp 0x496179
mov eax, 4
xchg edx, ebx
xchg ecx, edi
mov edx, ebx
xchg ecx, edi
xchg ecx, edx
jmp 0x49515c
mov esi, dword [esi]
and ebx, 0xd6a4a1c2
mov edi, edx
xor edi, 0xd6a5452a
or ebx, edx
or ebx, edx
add ecx, edi
rol ecx, 0x10
or edx, ebx
jmp 0x4957a3
add esi, dword [esp + 0x48]
sub ecx, edx
sub edi, ecx
mov ecx, edx
or ebx, edx
sub edi, 0xd6beb429
or ebx, edi
shl ecx, 0x1f
or edx, edi
jmp 0x494d9a