Function at 0x4b9e77
Capabilities:
Encrypt data using chaskey

Disassembly:
mov ebx, dword [esp + 0xb4]
add ecx, edx
dec edi
sub esi, 0x9b96be79
sub edi, 0x9b97535e
xor edi, 0x9b97de8f
mov esi, 0x9b984cd3
add esi, 0x9b98bf83
jmp 0x4b8f65
add dword [esp + 0x40], 4
mov ecx, 0x9bcea791
add ecx, edi
xor esi, edi
xchg edx, edi
neg ecx
or esi, edi
and edi, 0x9bd19029
or ecx, esi
and esi, 0x9bd2c2c9
mov esi, edx
sub edx, ecx
jmp 0x4b9ca2
push ebx
shr esi, 0xc
and edx, 0x9c1868f5
inc ecx
or edi, 0x9c1b47e1
mov edi, ecx
sub edx, edi
xor esi, 0x9c1ccde5
add edi, 0x9c1d76e3
xchg esi, ecx
jmp 0x4b9dc4
add dword [esp + 0xb4], 4
or edx, edi
dec esi
sub ecx, 0x9c1f9f80
neg edi
xor ecx, edi
mov edx, edi
dec edx
or esi, edx
jmp 0x4b73e7
mov ebx, dword [ebx]
shr edx, 0x1f
add ecx, edi
sub edx, edi
mov edx, 0x9c24de01
jmp 0x4b81c4
mov dword [esp + 0xbc], 0
xchg edx, esi
xchg esi, ecx
xor edi, ecx
mov edi, edx
sub edx, 0x9c277125
and ecx, edi
xor esi, 0x9c2861de
or edx, ecx
shl edx, 0x15
and esi, edx
add esi, edx
xor edi, esi
not edx
or edx, ecx
and edi, edx
jmp 0x4b7fd5
mov dword [esp + 0x4c], 0
mov edi, esi
and edx, esi
sub esi, edi
add ecx, esi
mov esi, edx
add esi, ecx
or edi, esi
shl edx, 0x12
and esi, ecx
shl edi, 6
add esi, ecx
and esi, 0x9c6b0fd5
and ecx, edi
or edx, 0x9c6bfd12
jmp 0x4b7e30
mov ebx, dword [ebx]
mov edx, 0x9c6e2f0e
dec edi
xor edi, esi
add ecx, 0x9c702949
xor edi, 0x9c706934
sub edi, esi
or esi, edx
mov edi, ecx
xchg ecx, esi
neg edi
bswap ecx
mov esi, 0x9c75f3ff
bswap ecx
xchg edi, esi
jmp 0x4b85a1
rol eax, 8
sub esi, ecx
dec edi
sub ecx, edx
dec edi
neg esi
sub ecx, 0x9cebb22b
dec edx
bswap edx
shl edi, 0xa
jmp 0x4b8f82
mov ebx, dword [ebx]
and ecx, edi
or edx, edi
or edx, esi
or edx, 0x9cef06af
shl esi, 0x1d
mov edi, esi
sub esi, edx
bswap edi
dec edx
mov ecx, edi
xor edi, edx
jmp 0x4b9081
jne 0x4b8a57
xor esi, 0x9d082cd9
and esi, 0x9d08a742
xor edx, edi
xchg edi, ecx
not ecx
or ecx, 0x9d0a6678
xchg esi, ecx
dec ecx
and ecx, edi
inc ecx
ror ecx, 0x10
mov ecx, edx
jmp 0x4b77f3
add dword [esp + 0xb4], ebx
xchg edx, ecx
bswap edi
or ecx, edi
xor ecx, edx
xchg esi, edx
neg ecx
sub ecx, edx
mov edx, 0x9d134e5d
mov esi, ecx
sub edx, ecx
and edi, esi
dec edi
mov esi, edi
shl edi, 0xd
xor ecx, edx
jmp 0x4b886a
mov ebx, dword [esp + 0xbc]
xor ecx, edx
mov edi, 0x9d174e27
add edi, 0x9d17ce20
sub edi, edx
or edi, 0x9d18a020
or esi, edi
and ecx, edx
shl ecx, 0x1e
inc ecx
jmp 0x4b977e
mov ebx, dword [esp + 0xbc]
sub esi, 0x9d1e9cc5
bswap edx
not edx
xor edi, edx
and ecx, edi
or esi, ecx
jmp 0x4b906a
add esp, 0xc8
xchg edx, ecx
sub edi, esi
and esi, edx
inc edx
sub edx, 0x9d290e47
shr edx, 0x14
or edi, ecx
mov esi, edx
add edx, ecx
sub edi, edx
and edx, ecx
jmp 0x4b9599
mov ebx, dword fs:[ebx]
bswap edx
add esi, 0x9d59434f
or ecx, 0x9d59b65a
add edi, ecx
xchg edx, esi
mov edx, 0x9d5a92f7
and esi, ecx
dec edi
sub esi, edi
xor edi, ecx
neg edx
xor edx, esi
or edx, ecx
xchg esi, ecx
jmp 0x4b8b97
mov dword [esp + 0x40], 0
inc ecx
not ecx
not edx
add edx, ecx
sub edi, edx
bswap edx
add esi, ecx
sub esi, edx
jmp 0x4b7825
mov ebx, dword [ebx]
not edx
xor esi, 0x9d79bb91
nop
xor ecx, edi
xchg ecx, edx
mov edx, esi
xor esi, edx
add ecx, edx
add edi, ecx
sub esi, 0x9d7d690b
jmp 0x4b9d82
add dword [esp + 0xb4], 0x78
mov ecx, edx
xchg ecx, edi
rol esi, 0x15
shl edx, 8
mov esi, ecx
sub edx, 0x9d8afd00
xor esi, edi
jmp 0x4b7b85
add ebx, dword [esp + 0xbc]
shl edx, 9
xor edi, 0x9d8c75ec
add edi, esi
xor edi, 0x9d8d5169
add ecx, esi
mov edx, 0x9d8e4b70
xor edx, edi
inc ecx
and ecx, esi
jmp 0x4b7c5d
mov dword [esp + 0xb4], 0
add edx, esi
and esi, 0x9d999ca2
xor esi, ecx
neg edx
xchg esi, ecx
ror esi, 0x14
dec ecx
sub edi, edx
sub edi, esi
sub edx, edi
bswap edi
jmp 0x4b8339
mov ebx, dword [esp + 0xb4]
or edi, esi
mov esi, edi
add edi, ecx
rol edx, 0xb
shl esi, 6
mov esi, ecx
inc edi
and ecx, esi
mov edi, ecx
jmp 0x4b9cec
mov dword [esp + 0x4c], eax
rol ecx, 0x1d
xor edx, ecx
or edi, esi
xor edx, esi
and ecx, edx
not ecx
bswap esi
sub esi, edi
sub edi, 0x9dc419bf
or esi, ecx
jmp 0x4b8d0d
add ebx, 0x18
mov edx, edi
mov esi, edx
neg edx
add ecx, edi
rol esi, 0x1e
and edx, edi
not esi
mov esi, ecx
xchg edx, ecx
or esi, 0x9de2286c
or esi, edi
jmp 0x4b9333
mov dword [esp + 0xb4], ebx
neg ecx
xchg edx, ecx
and edi, 0x9de89667
shl esi, 0x18
or edx, edi
jmp 0x4b98c8
mov ebx, dword [ebx]
and ecx, edx
mov esi, edi
bswap ecx
sub edx, ecx
sub ecx, 0x9e1535d7
or edx, esi
xchg edi, ecx
mov edx, edi
xchg esi, edx
xchg ecx, edx
dec edx
jmp 0x4ba20a
mov dword [esp + 0x48], ebx
mov esi, ecx
and edi, ecx
or edi, 0x9e195ad3
or edx, 0x9e19cb1a
or edx, ecx
and edi, 0x9e1aa797
xor esi, 0x9e1b15fa
mov edx, ecx
sub esi, 0x9e1bf7e7
jmp 0x4b8a96
mov ebx, dword [esp + 0xb4]
not ecx
xor ecx, 0x9e1cf6c3
mov esi, ecx
or edx, edi
mov esi, edx
shl edx, 7
neg esi
dec edx
and edi, 0x9e2017c3
add esi, 0x9e208be3
sub edx, 0x9e20fe82
jmp 0x4b8319
mov eax, 2
not ecx
sub edi, esi
xchg edi, edx
shr esi, 0x18
dec edx
shl edi, 0x18
mov esi, ecx
xchg esi, edi
sub esi, ecx
and edx, ecx
jmp 0x4b9a38
xor al, byte [ebx]
xor edx, ecx
shr ecx, 0xa
shl esi, 0x19
rol esi, 0xc
xor ecx, esi
dec edx
or ecx, edi
xchg edx, esi
ror edi, 0x10
jmp 0x4b7ac4
mov eax, 4
or ecx, edx
xchg edx, edi
xchg ecx, esi
and edi, esi
neg edi
add edx, esi
ror edx, 0x15
jmp 0x4ba034
mov dword [esp + 0xb4], ebx
xor ecx, 0x9e681f7c
xchg esi, ecx
mov esi, edi
add edi, esi
mov ecx, esi
mov edi, edx
xor edx, esi
or edx, esi
xor edx, edi
jmp 0x4b7f45
mov ebx, dword [esp + 0xb4]
or esi, 0x9e75e7de
or edx, edi
rol edi, 5
bswap ecx
mov edx, ecx
add esi, 0x9e7718c4
or edi, 0x9e775ab0
dec edi
sub edi, ecx
jmp 0x4b7ed1
mov ebx, dword [esp + 0x40]
sub edi, ecx
sub edi, esi
mov esi, edi
sub edx, edi
xor edi, esi
mov esi, ecx
xor edx, 0x9e9238bc
and edi, edx
sub edi, ecx
xchg esi, edx
shr ecx, 0x1d
add edx, esi
neg edx
mov ecx, edx
add edx, edi
jmp 0x4b9457
jne 0x4b84d5
or ecx, esi
xor edx, 0x9ea49c0e
or esi, edi
or edi, esi
xchg edx, ecx
jmp 0x4b9e62
add dword [esp + 0xb4], 0x20
rol edi, 4
xchg esi, ecx
add edx, edi
add edx, edi
mov ecx, edi
nop
xchg edi, edx
jmp 0x4b85f9
mov ebx, dword [ebx]
add ecx, esi
shl esi, 0x15
neg esi
add ecx, edi
and edi, ecx
mov edx, 0x9f25d6f1
xchg esi, ecx
or esi, 0x9f2652e3
and edx, esi
jmp 0x4b7812
inc dword [esp + 0x4c]
or ecx, 0x9f490ed3
neg edi
and edx, 0x9f4a217b
and ecx, 0x9f4a91fe
and edi, esi
and ecx, edi
shl esi, 0xb
mov edx, esi
jmp 0x4b75b4
mov ebx, 0x30
xor esi, 0x9f5065dc
neg esi
or esi, edx
or esi, ecx
and ecx, edi
add esi, edx
xchg edi, edx
or esi, 0x9f540c6c
xor edi, 0x9f548ce4
jmp 0x4b7ddb
mov dword [esp + 0x40], ebx
add esi, edi
or esi, 0x9f6da392
sub esi, edi
xor ecx, 0x9f6e275b
or edi, 0x9f6e66bc
sub esi, 0x9f6ea630
shr edx, 0x1b
and esi, 0x9f6f2604
add ecx, edi
jmp 0x4b83ef
add ebx, 0xc
xor esi, ecx
add ecx, esi
xor edi, 0x9f7021d8
xchg edi, ecx
mov esi, edi
neg esi
xchg esi, edx
xor edi, 0x9f716394
jmp 0x4b7ae0
add ebx, dword [esp + 0xbc]
nop
mov edi, edx
sub esi, edx
mov esi, ecx
xor esi, edx
jmp 0x4b8b64
sub dword [esp + 0xb4], 8
mov ecx, edi
bswap ecx
add edi, 0x9f9f7ed2
dec edi
and edi, 0x9fa05c90
add esi, edi
sub edi, 0x9fa145a7
xor edx, edi
mov ecx, 0x9fa24bb3
not ecx
and esi, 0x9fa360c8
xor ecx, edx
jmp 0x4b836b
add ebx, dword [esp + 0xbc]
inc edx
and ecx, 0x9fbb3614
mov edi, ecx
or esi, edx
sub edi, 0x9fbcb69f
xor esi, ecx
neg ecx
xchg ecx, esi
jmp 0x4b77cb
mov ebx, dword [ebx]
sub ecx, edx
and esi, 0x9fea14ad
inc esi
mov esi, edx
jmp 0x4b81e7
mov ebx, dword [ebx]
add edi, ecx
sub esi, ecx
or edx, 0x9ff0848b
xor edx, edi
neg edi
not esi
ror edx, 0x1a
shl edx, 0x1c
jmp 0x4b8c59
inc ebx
xchg edx, esi
xor edx, ecx
shr edi, 2
mov esi, edx
mov edi, ecx
bswap ecx
mov edi, edx
and ecx, edx
rol edx, 6
sub esi, edi
not edi
jmp 0x4b944f
add ebx, 0x3c
dec esi
xor ecx, 0xa017bc11
dec edi
rol edi, 0x10
mov ecx, esi
not esi
jmp 0x4b79bb
add ebx, 0xc
or ecx, esi
or edx, ecx
or esi, ecx
xchg esi, edx
neg edi
and edi, edx
shl edx, 0x1c
xor edi, ecx
inc esi
sub ecx, 0xa01d9fcc
or edx, esi
mov edi, ecx
xor ecx, 0xa01e5386
jmp 0x4b9150
cmp eax, dword [esp + 0x48]
jmp 0x4b7b01
mov ebx, dword [ebx]
xor ecx, 0xa02a46d4
mov edi, edx
or edi, ecx
and edx, edi
or edi, edx
xchg edx, ecx
and edx, esi
add edi, 0xa02dcde0
nop
jmp 0x4b8971
mul ebx
mov edx, ecx
add ecx, esi
mov edi, 0xa05a2d5b
mov ecx, esi
shr ecx, 8
inc esi
sub edi, edx
dec edi
not ecx
and edi, edx
sub edi, edx
dec edi
jmp 0x4b80f8
mov ebx, dword [ebx]
sub esi, edx
inc ecx
bswap edi
add esi, edx
or esi, edi
bswap esi
xor edx, edi
jmp 0x4b96e6
cmp byte [ebx], 0
jmp 0x4b8734
add ebx, dword [esp + 0x4c]
sub edi, ecx
and edx, esi
xchg edx, ecx
sub edx, edi
add edx, esi
or ecx, esi
mov edi, ecx
xchg esi, edx
mov edi, ecx
sub ecx, edx
jmp 0x4b8531
mov dword [esp + 0xb4], ebx
xchg esi, edi
sub ecx, edi
add esi, ecx
shl esi, 6
or edx, 0xa0bebcba
or ecx, 0xa0beff6d
add edi, edx
neg esi
or edx, 0xa0c12cee
mov esi, edi
jmp 0x4b86e1
ret
mov ebx, dword [ebx]
mov edi, edx
or edx, 0xa114f265
and edx, esi
xor edi, esi
ror esi, 0x1a
neg edi
jmp 0x4b8dd9
add dword [esp + 0xb4], eax
shr edx, 0xd
sub edi, esi
xor ecx, 0xa1193ea2
add esi, 0xa1197936
ror esi, 0x19
ror edx, 0x1c
jmp 0x4b8020
mov dword [esp + 0x40], ebx
rol edx, 0x19
neg ecx
or ecx, edx
add edi, 0xa11b7db0
or esi, edx
xor edx, esi
sub esi, edi
shr ecx, 0xe
jmp 0x4b8a57
mov dword [esp + 0xbc], ebx
sub edx, edi
add edx, 0xa12e2f1d
xor ecx, edx
ror ecx, 0x18
mov ecx, edi
dec edi
shr esi, 0x1a
dec esi
neg ecx
sub edi, esi
dec ecx
shr esi, 0x1e
shr ecx, 3
xor edi, edx
jmp 0x4b7bd1
add ebx, dword [esp + 0xb4]
ror edx, 0x1d
shr edx, 0x12
and ecx, esi
mov edi, edx
mov edi, 0xa13aa253
rol ecx, 0x1c
bswap edi
and ecx, edx
shl edx, 0xf
mov edx, esi
and ecx, esi
jmp 0x4b8f33
mov ebx, dword [esp + 0xbc]
and esi, ecx
mov esi, 0xa158de60
xor edi, 0xa1592256
sub edx, edi
xor edi, 0xa159ff8a
not ecx
mov edi, ecx
xchg ecx, edi
xor esi, 0xa15bd2db
shl edx, 0xb
mov edx, edi
xor edx, edi
or edi, edx
or edi, ecx
xchg edi, edx
mov edx, 0xa15ed477
jmp 0x4b7b58
mov ebx, dword [esp + 0x4c]
add esi, 0xa17aca4e
or edx, edi
not edx
neg ecx
sub edi, ecx
mov ecx, esi
sub edx, esi
sub edi, esi
sub edx, edi
xor edi, esi
jmp 0x4b9283
mov ebx, dword [esp + 0x40]
or esi, ecx
and ecx, 0xa1a886bc
or edx, 0xa1a8c12c
jmp 0x4b95e7
mov ebx, dword [ebx]
sub ecx, esi
add ecx, edi
and edi, ecx
ror ecx, 0x1d
or edx, ecx
and edi, 0xa1adfde2
mov edx, 0xa1ae3c6b
ror ecx, 0x1b
ror edi, 0x13
and edx, esi
jmp 0x4b7f66
add ebx, dword [esp + 0xbc]
and esi, 0xa1b780b9
sub ecx, 0xa1b7c346
sub esi, edi
xor edi, ecx
xchg edx, edi
mov esi, edi
and edi, ecx
xor edi, edx
sub ecx, esi
ror esi, 4
sub esi, edi
jmp 0x4b9640
xor eax, eax
or edx, ecx
mov edi, ecx
xchg esi, edi
mov edx, 0xa1be85cd
xor edi, 0xa1bf071a
add edi, esi
and esi, ecx
and edi, edx
rol edx, 7
and edi, 0xa1c13540
jmp 0x4b84d5
pop ebx
and ecx, edx
nop
add edi, esi
mov edi, esi
neg esi
add edx, 0xa1cac586
jmp 0x4b9121
sub esp, 0xc8
or edi, edx
xor esi, edi
xor ecx, 0xa1cb8cd4
and ecx, esi
xor edx, 0xa1cc08fb
neg esi
xor edx, edi
add ecx, edi
inc edi
bswap edi
and edi, ecx
jmp 0x4b7964
movzx ebx, word [ebx]
not edi
inc edi
and ecx, esi
xchg edx, ecx
xchg esi, ecx
ror ecx, 0x1a
add edi, edx
xchg ecx, esi
xchg edi, esi
xor esi, 0xa1f6f8b9
add esi, ecx
jmp 0x4ba0fa
mul ebx
and esi, edi
xchg ecx, edi
mov esi, edx
mov ecx, edx
xor ecx, edi
and edi, 0xa2066292
and edx, edi
mov esi, edi
or ecx, esi
neg esi
xchg ecx, esi
mov ecx, esi
inc edx
jmp 0x4b961d
add ebx, dword [esp + 0xbc]
xor edi, ecx
add edi, esi
sub esi, edx
shl esi, 9
xchg edi, ecx
xchg ecx, edi
or ecx, edx
or ecx, edi
add esi, ecx
xor edi, 0xa21ab01d
dec esi
jmp 0x4b9495