Function at 0x499c35
Capabilities:
Encrypt data using chaskey

Disassembly:
cmp eax, dword [esp + 0xb8]
jmp 0x499c06
mov esi, dword [esi]
xchg edi, ebx
add edi, ecx
or ecx, ebx
and ebx, edx
rol edi, 0xe
and ebx, 0x45c4e7cc
jmp 0x498c34
mov esi, dword fs:[esi]
add edx, ecx
or ecx, ebx
add edx, 0x45ccdc5e
not edx
mov ebx, 0x45cd4cb6
nop
neg ebx
ror ebx, 0x11
xchg ecx, edi
mov edx, ecx
jmp 0x49a2dc
inc esi
not edi
shl edi, 1
mov ecx, edi
bswap edx
mov ebx, edx
sub ecx, edi
jmp 0x49abc5
jne 0x498edf
xchg edx, edi
xchg edi, ecx
not ebx
inc ebx
bswap ecx
sub ebx, edi
xor edi, 0x45df684a
sub edi, ecx
or ecx, 0x45e02542
xchg ebx, edx
xor ebx, edx
mov edi, ecx
jmp 0x49aa11
add esi, dword [esp + 0x10]
xor ecx, edx
add edi, ebx
xor ebx, edi
xchg ecx, edx
and ebx, edx
mov edi, ecx
and ebx, 0x45e3c85a
or edx, ecx
jmp 0x49aa9f
mov esi, dword [esi]
or edx, ecx
dec edi
nop
or ecx, edx
xchg ebx, edx
mov ebx, 0x45e67052
or edi, edx
ror edi, 0x1a
jmp 0x4983ac
mov dword [esp + 0x58], esi
or ebx, 0x46060188
neg ebx
add edx, ecx
xchg edx, ecx
jmp 0x498b7d
add esi, 0x18
xchg edx, ecx
add edx, edi
and ebx, ecx
or edi, ebx
mov ebx, ecx
mov edi, 0x462f8bf8
sub ecx, 0x462fe15a
mov ebx, 0x46304e1e
not ebx
xor edx, edi
and ebx, 0x46315e5a
xchg edx, ebx
jmp 0x49a9f2
mov eax, 4
and ebx, 0x463ab5e2
or edi, edx
jmp 0x498e5c
mov esi, dword [esi]
mov edi, 0x463e922e
not ebx
xchg edi, edx
xor ebx, ecx
add edi, ecx
neg edx
mov edi, ecx
dec edx
jmp 0x49a656
mov dword [esp + 0x58], 0
xchg edx, ecx
shl ebx, 0x1e
and ebx, 0x4671857e
rol edi, 0xd
jmp 0x498ba1
mov esi, dword [esp + 0x10]
mov ecx, edx
bswap edx
shl edx, 0xd
sub ebx, edi
add edx, 0x467a3f38
bswap edx
sub edi, 0x467b0f66
shl ecx, 0x1e
jmp 0x498b20
mov esi, dword [esi]
add edi, edx
mov edi, ecx
sub edi, edx
inc ecx
jmp 0x49a0e2
mov esi, dword [esp + 0x58]
sub edi, ebx
add ebx, 0x468d6d4c
xor edi, ecx
not edx
shl edx, 1
and ebx, 0x468ef400
or edi, ecx
and edi, ecx
and edx, 0x468fff10
sub edx, edi
or ebx, edi
not edx
jmp 0x49a290
add dword [esp + 0xa8], esi
rol edi, 0x1d
mov edi, edx
bswap ecx
and ecx, edx
add ebx, ecx
neg edi
dec ebx
ror ecx, 0x12
jmp 0x49a173
add esi, dword [esp + 0x10]
shl ecx, 0x14
not edi
rol ecx, 2
xor edi, 0x46a63064
mov edx, edi
add ecx, 0x46a6d6f2
jmp 0x499ff5
mov eax, 2
or edi, ecx
sub edx, ecx
xor ebx, ecx
bswap edx
add edx, ecx
xchg ebx, ecx
jmp 0x499660
mov dword [esp + 0x10], 0
xor ecx, edx
add ecx, edx
add edx, ecx
sub ecx, edi
shr ecx, 0x10
mov edx, ebx
add edx, ebx
xor edx, ecx
sub edx, 0x46b14528
shl ecx, 0xc
jmp 0x49922a
add esi, dword [esp + 0x10]
and edi, edx
and ebx, ecx
sub ebx, edi
xor ecx, ebx
xor ecx, edi
shr ecx, 0x13
jmp 0x49ab60
mov dword [esp + 0x10], esi
sub edi, 0x46bfe9ae
or ebx, edi
sub edx, 0x46c0971e
add edi, ecx
mov ecx, edx
nop
sub edx, edi
add edx, edi
shr edx, 0x19
shr edi, 0x11
rol edi, 8
or ecx, ebx
or edi, edx
or ebx, 0x46c49788
jmp 0x49a5cb
movzx esi, word [esi]
and ecx, 0x46f4031e
xchg ecx, edi
rol edi, 0x14
xchg ecx, ebx
add edi, ecx
mov edi, ebx
not ecx
mov ecx, edx
jmp 0x499b93
xor al, byte [esi]
sub ebx, edx
xchg edx, ebx
inc edx
add edi, ebx
not ebx
xor ecx, ebx
add edi, ebx
or ebx, ecx
bswap edx
sub ecx, edi
jmp 0x49a196
mov esi, dword [esi]
mov edx, 0x4722f1e0
xor ebx, ecx
bswap edi
add ecx, edi
xor edi, edx
sub edi, ebx
xor ecx, 0x4724272a
add edi, 0x47245958
mov edx, ebx
mov edx, 0x4724bb84
jmp 0x499744
mul esi
dec ecx
dec ecx
and edi, edx
sub ebx, edi
jmp 0x499ec1
mov dword [esp + 0xa8], 0
add ebx, edi
or edx, ecx
mov ebx, ecx
and edi, ebx
xchg edx, ebx
mov ecx, 0x476e6eba
inc edx
and ebx, 0x477202da
or ecx, ebx
xchg edx, ecx
jmp 0x499aeb
mov esi, dword [esi]
mov ecx, ebx
xchg ebx, ecx
bswap ecx
shl ebx, 0x10
and edi, ecx
xor ebx, edi
jmp 0x49abcd
add dword [esp + 0xa8], 0x78
xor edi, edx
mov ecx, 0x47c949a8
inc edx
dec ebx
add ecx, ebx
or edx, edi
shl edx, 0x19
or ecx, 0x47ce82d4
xor ebx, edi
or edi, ecx
or ecx, edx
shr ecx, 0xc
jmp 0x49a636
mov esi, dword [esi]
or ecx, edx
dec ecx
add edi, ebx
mov ecx, edi
or edx, ebx
sub edx, edi
xchg edi, edx
sub edi, ebx
jmp 0x49a6dd
mov esi, dword [esp + 0xa8]
mov ebx, edx
mov edi, edx
shl edx, 0xe
mov ebx, edi
or ebx, 0x48434dda
shl edx, 0x18
dec edx
and ebx, edx
mov edx, 0x4845b00c
shr ecx, 1
or ecx, 0x48474654
shr edi, 0x14
jmp 0x498a34
add dword [esp + 0xa8], 4
shl edi, 0x13
add edi, ecx
rol ebx, 0x13
xor ecx, edi
sub edx, ecx
or ebx, 0x484b9f20
xor ebx, edx
xor edx, 0x484d7cb4
jmp 0x49958a
mov esi, dword [esp + 0x28]
xor ecx, 0x4869a41e
and ecx, edi
jmp 0x4991e5
mov esi, dword [esi]
add ebx, 0x48886bf6
add ecx, edi
nop
and ecx, ebx
xor edx, ebx
inc edi
xor ebx, 0x488d6228
neg edx
sub ecx, ebx
xchg edi, edx
add ebx, 0x48901e04
xchg edi, ebx
mov edx, ecx
mov ebx, edx
jmp 0x49869b
add esi, dword [esp + 0x10]
xchg ebx, ecx
bswap edi
mov edi, ecx
and edx, ebx
xor edi, edx
sub edx, 0x48a2ec0c
xchg edi, edx
add ecx, edi
jmp 0x499c7a
mov esi, dword [esp + 0xa8]
or edx, ecx
and ebx, 0x48a5b610
add edx, ebx
or edi, edx
or edx, 0x48a882ce
add edi, 0x48a9c062
mov edx, ecx
xor ebx, edx
not ecx
ror edi, 0x15
nop
inc ecx
jmp 0x499044
add esi, 0x3c
mov ebx, edx
or edx, ecx
inc ecx
add edx, ebx
sub ecx, edx
add ebx, 0x4909f8d2
inc edi
or ecx, edx
jmp 0x498749
mov esi, 0x30
and ecx, 0x495100ca
not edi
and ecx, ebx
bswap edx
shr edi, 0x14
rol ebx, 3
shl ecx, 0x15
or edx, ecx
jmp 0x4982b5
mov dword [esp + 0xb8], esi
or edi, 0x4966c53c
or edx, edi
add edi, 0x4967594a
add ecx, edx
add ebx, edi
mov ecx, edi
ror edi, 0xe
or edi, ebx
jmp 0x499a78
mul esi
ror edi, 0x14
shr edi, 0x1b
and edi, 0x498e99fa
add edx, ebx
sub edx, edi
xchg ecx, edi
and edi, ebx
mov ecx, 0x499a3482
jmp 0x49a5f0
jne 0x49a3d9
sub edx, ebx
dec edi
mov ecx, ebx
neg ecx
mov ecx, ebx
mov edx, 0x49aef3f2
jmp 0x4995bc
sub esp, 0xd8
add ecx, 0x49b5139a
mov edx, edi
jmp 0x49a420
mov dword [esp + 0x58], esi
mov edx, ebx
sub edi, edx
xor ebx, edi
xchg ebx, edx
xchg ecx, edi
mov ebx, 0x49c2ca3a
and ebx, ecx
xor edi, ecx
jmp 0x49a3d9
ret
sub dword [esp + 0xa8], 8
xchg ecx, edx
xor ebx, edi
xor ebx, edi
sub ecx, edi
mov edi, 0x4a341b16
ror edx, 0xf
xor edi, 0x4a3591be
xchg edx, ebx
jmp 0x49aa4c
mov dword [esp + 0x28], eax
neg edx
sub edi, ecx
jmp 0x499e9c
mov esi, dword [esi]
not edi
xor ecx, 0x4a5972ce
shl ebx, 9
bswap ecx
rol edi, 0x12
add edx, edi
jmp 0x49a094
push esi
add ecx, ebx
xchg ecx, ebx
add ecx, edi
dec edi
jmp 0x49a9a7
add esi, 0xc
shr ecx, 9
or edx, edi
and ecx, edx
sub edi, edx
sub edx, ecx
xchg ebx, edi
neg ecx
mov edi, ecx
jmp 0x49933e
add esi, dword [esp + 0x10]
xchg ecx, edi
xor ecx, 0x4aa289dc
shr edi, 2
rol ebx, 0x14
jmp 0x498513
add esi, dword [esp + 0xa8]
bswap ecx
xor ecx, edx
not ebx
or edi, ecx
and ebx, edx
bswap ebx
or ecx, edi
sub edi, ebx
jmp 0x4992bf
add dword [esp + 0xa8], 0x20
and ebx, edx
or ecx, edx
xor ecx, ebx
neg edx
shl edx, 0x15
rol edi, 2
shl edx, 9
mov edx, 0x4abefa9a
jmp 0x499764
rol eax, 8
xor ecx, ebx
xchg edi, edx
not ebx
xor edx, edi
add edx, ecx
and edi, ebx
sub edi, edx
rol edx, 7
jmp 0x4982f3
mov esi, dword [esp + 0x58]
inc edi
mov edx, 0x4ac66226
or ecx, ebx
xor edi, ecx
xor edi, ebx
shr edi, 0xe
xchg ebx, ecx
or ecx, ebx
mov ebx, ecx
sub edx, ecx
jmp 0x49a9cc
mov esi, dword [esi]
mov edx, ebx
ror edi, 0xe
or ebx, edx
mov ecx, ebx
xchg ebx, ecx
or edx, edi
jmp 0x498b3d
add esi, 0xc
shr ebx, 0x10
shr edi, 0xd
add edx, ebx
add ebx, edi
or edi, 0x4b063c6e
xchg edx, ebx
jmp 0x499f86
inc dword [esp + 0x28]
not edx
and edi, ecx
and edx, ebx
xchg edx, edi
add ecx, edx
mov ebx, ecx
sub edx, edi
xor edx, 0x4b363e02
and edi, ecx
shl edx, 0x14
or edi, ecx
mov ecx, 0x4b38f6a8
jmp 0x49a715
mov dword [esp + 0x28], 0
or edx, 0x4b3f555c
or edi, 0x4b40224e
mov ebx, edi
xor edi, edx
add ecx, 0x4b428856
add edx, edi
add edi, ecx
rol edi, 2
xor ecx, 0x4b456e2a
mov ebx, 0x4b465164
jmp 0x498938
mov esi, dword [esp + 0x10]
xor ecx, edi
mov ebx, 0x4b8c98b6
sub edx, edi
xor ebx, ecx
add edi, 0x4b8e885c
inc edx
xchg ecx, edi
dec edx
xchg edx, ecx
mov edx, edi
jmp 0x499919
add dword [esp + 0xa8], eax
rol edi, 0xd
or ecx, ebx
jmp 0x49a975
mov esi, dword [esp + 0x10]
mov ecx, 0x4b9ff42c
mov edi, ecx
sub ebx, edi
and ecx, edx
ror ebx, 0x13
neg edi
sub edi, ebx
and edx, edi
jmp 0x49a10b
mov dword [esp + 0xa8], esi
add ecx, 0x4ba59310
shl ebx, 0xb
xor ecx, edi
sub edi, ebx
dec edx
xor ebx, edi
xor edi, ecx
or edi, 0x4baa5822
add edi, ebx
xor edi, ecx
jmp 0x499312
mov esi, dword [esi]
mov edi, 0x4bc19a9e
xchg ecx, edi
xor edi, ebx
or ecx, edx
add edi, ecx
or edx, 0x4bc55506
and edi, 0x4bc5e3e2
not ebx
jmp 0x4996d7
add dword [esp + 0x58], 4
inc ebx
xor ecx, 0x4bcef08e
mov edx, ebx
mov ebx, ecx
xor ecx, 0x4bd196c8
not edi
sub edx, 0x4bd2c68a
and edi, edx
xchg ecx, ebx
sub ebx, 0x4bd4d97c
jmp 0x498a58
mov esi, dword [esp + 0xa8]
shl edx, 0x15
dec ecx
shl ecx, 0x19
rol edi, 0x18
xor ebx, edx
add ebx, ecx
xor ebx, 0x4c493048
xor ebx, 0x4c49cc18
add edi, ecx
inc edx
xor edi, 0x4c4bb934
shl ebx, 2
jmp 0x4983cc
xor eax, eax
xor edx, ecx
sub ebx, 0x4c4df768
add ecx, edi
rol edx, 0x16
shr edx, 5
and ebx, ecx
and ebx, edi
xor ecx, ebx
or edi, 0x4c52c5c4
xor edx, ebx
jmp 0x498edf
add esi, dword [esp + 0x28]
shr ecx, 0x11
add edi, edx
or edi, 0x4c558e1c
xor ebx, edx
and ecx, ebx
add ecx, 0x4c57b200
bswap edx
shl ecx, 0x18
jmp 0x49871e
mov esi, dword [esi]
bswap ebx
xor edx, ebx
add edi, edx
add edx, 0x4c5c49a0
and edx, edi
or edx, 0x4c5d8ab2
xchg ebx, edx
add ebx, edx
jmp 0x498c4d
pop esi
xchg ecx, ebx
mov edx, ebx
sub edx, ebx
nop
add edx, edi
sub edi, ebx
or edi, 0x4c6d23e2
bswap edx
and edi, edx
mov ecx, ebx
jmp 0x49815e
mov esi, dword [esp + 0xa8]
xchg ecx, edi
mov ebx, edi
and ecx, edx
xchg edi, ebx
or edx, ecx
or ebx, 0x4c7913ba
rol ecx, 0x12
rol ecx, 5
bswap edi
mov edi, ebx
jmp 0x498254
add esp, 0xd8
not edx
and ecx, edx
dec edx
xor edi, edx
jmp 0x499dd9
mov dword [esp + 0xa8], esi
xchg ecx, edi
and edi, ecx
add ecx, edi
or edi, ebx
xor edi, ecx
or ecx, edi
shr edx, 0x14
or edx, ecx
jmp 0x49a1af
cmp byte [esi], 0
jmp 0x498382
mov dword [esp + 0xa8], esi
sub edi, ecx
shr ecx, 3
sub edi, ebx
add edi, 0x4cbc5408
xor ebx, edx
and edi, ecx
jmp 0x498989