Function at 0x4b7946
Capabilities:
Encrypt data using chaskey

Disassembly:
pop esi
or ebx, edi
or ecx, edx
sub ebx, ecx
or edi, edx
inc ecx
sub edx, 0x978619f
add edx, ecx
xor edx, 0x97935fb
shl ebx, 0xf
xor ebx, ecx
jmp 0x4b5452
add esi, dword [esp + 0x4c]
dec ecx
sub ebx, edx
xor edi, 0x9819edb
add ecx, edi
or edx, edi
sub edx, 0x982dd59
shr edx, 0x14
xchg ebx, ecx
bswap edx
sub edx, edi
jmp 0x4b4d0e
jne 0x4b45f4
and edx, ecx
shl edx, 0xb
bswap ecx
mov edx, ebx
add ecx, edi
and edx, 0x98b9173
jmp 0x4b42b4
mul esi
xor ebx, edi
mov edx, 0x9920c65
xor edi, 0x992af67
sub edi, ecx
not ecx
xor edx, 0x9944533
jmp 0x4b4775
mov esi, dword [esi]
add edx, ebx
xchg ebx, edi
or ebx, edx
xor ebx, edx
xor edx, ebx
shr edi, 0x17
shr ebx, 0x1f
xchg ecx, edi
xchg edx, edi
not ecx
xor ebx, edi
add edi, 0x9a1f08f
and edi, ecx
and edi, edx
jmp 0x4b68a6
mov esi, dword [esp + 0x68]
sub edx, 0x9a2bd8f
add edi, ecx
xchg ecx, edx
xchg ecx, edx
and ecx, ebx
dec edi
mov ebx, edi
mov ecx, edx
jmp 0x4b6b44
mov eax, 4
xor edi, ecx
or edi, 0x9a50fd3
not edx
or edi, ebx
rol edi, 4
and edx, edi
xor ecx, edx
add ebx, ecx
and ebx, ecx
xor ebx, ecx
jmp 0x4b5006
mov esi, dword [esi]
bswap ecx
and ebx, edi
rol ebx, 0x18
sub ecx, ebx
ror ebx, 0x1d
bswap edi
mov ebx, edi
and edx, edi
mov edx, 0x9aa81df
dec ebx
jmp 0x4b48bd
jne 0x4b55c4
sub ecx, edi
or edx, edi
sub edx, ecx
inc edi
sub ecx, edi
rol edi, 0x18
neg edi
dec edi
jmp 0x4b5e2a
xor al, byte [esi]
and edi, ebx
and edi, ecx
sub edi, 0x9c3fe39
dec ecx
ror edi, 0x11
xchg ecx, edi
inc edx
xchg edi, ecx
ror ecx, 6
not edi
xor edi, ecx
and ecx, ebx
jmp 0x4b772a
mov dword [esp + 0x74], esi
ror ebx, 0xe
sub edi, ebx
or ebx, 0x9c9309f
add ebx, edi
or ecx, ebx
xchg ecx, ebx
xchg edx, ecx
or edi, ebx
jmp 0x4b6e25
mov esi, dword [esp + 0x4c]
mov edi, 0x9d40e4d
xchg ebx, edi
sub ebx, edx
or ecx, ebx
not edi
neg edi
xor ebx, edi
mov edi, 0x9d5d643
jmp 0x4b775e
mov dword [esp + 0x90], eax
and ecx, edi
xor ebx, edx
sub edi, ecx
xor ebx, ecx
shl edi, 0x1e
and edx, ecx
mov ecx, edi
and edx, edi
or ebx, ecx
ror ecx, 0x1f
jmp 0x4b6391
mov dword [esp + 0x4c], esi
add ebx, ecx
xor ecx, edx
shl edx, 0x10
or ebx, ecx
or ebx, ecx
xchg edi, ebx
sub edi, edx
mov ebx, 0xa3e5659
mov edi, ebx
xor ebx, edx
jmp 0x4b49c4
add dword [esp + 0x4c], 0x78
shr edx, 0x1d
nop
mov ebx, edx
add edx, edi
xor edi, ecx
bswap edx
sub edi, 0xa79f629
or edi, ecx
jmp 0x4b5951
add esi, 0xc
mov edx, ebx
rol edi, 0x19
mov ecx, edi
and ebx, ecx
xchg edi, ecx
add edx, edi
rol edx, 0x15
xchg ebx, edx
sub ecx, edx
ror edi, 8
sub ebx, edx
or ebx, edi
jmp 0x4b5108
mov esi, dword [esi]
xchg ebx, edi
not edx
or ecx, 0xaeecae1
and edi, ebx
or ebx, edx
add ebx, edi
mov edx, ecx
sub edi, ecx
xchg ecx, ebx
or ebx, 0xaf26be9
sub ecx, edi
add ebx, edx
jmp 0x4b4edb
mov dword [esp + 0x4c], esi
bswap ecx
ror ecx, 0x19
neg ebx
xor ebx, ecx
jmp 0x4b444e
mov esi, dword [esi]
dec ecx
mov ebx, edi
add edx, 0xb159605
not ecx
xor ecx, edi
sub ebx, edx
sub ebx, edx
xchg edx, edi
shr ebx, 7
or edx, ebx
sub ecx, ebx
and ebx, ecx
jmp 0x4b4ae8
movzx esi, word [esi]
xor edi, 0xb2c2b53
ror ecx, 0xb
xchg ecx, edx
xchg edx, ecx
xor ecx, edi
rol edx, 0x18
sub ebx, edi
sub ecx, ebx
xor ecx, edi
inc ebx
jmp 0x4b6747
add dword [esp + 0x4c], 0x20
inc edx
xor edi, 0xb31168b
add ebx, 0xb31565b
sub edx, ecx
not ebx
or edi, ecx
or edx, edi
xchg ebx, edi
jmp 0x4b46d5
mov esi, dword [esi]
mov edi, edx
add ebx, ecx
xchg edi, edx
shr edx, 0x1b
dec ebx
not edx
dec ecx
add ecx, 0xb412875
neg ecx
sub ecx, 0xb41b88d
shr ecx, 0x1a
mov ecx, ebx
xchg ecx, edx
mov edi, edx
mov edi, edx
sub edi, ecx
jmp 0x4b7852
cmp eax, dword [esp + 0x6c]
jmp 0x4b455e
add esi, dword [esp + 0x68]
inc edi
shl ebx, 5
neg ecx
shl ebx, 0x1b
jmp 0x4b6144
mov esi, dword fs:[esi]
sub ebx, edi
sub edi, 0xb9aecc3
or ecx, edx
sub edi, edx
bswap edi
neg edi
add edx, ecx
inc edi
xor edx, ecx
sub ecx, edx
xor ebx, ecx
sub edi, ebx
jmp 0x4b6de5
add dword [esp + 0x4c], eax
sub ecx, edi
dec ebx
and edx, ecx
neg ecx
shr ebx, 0xa
rol edi, 0x16
and edx, 0xb9f71ff
xchg edx, edi
jmp 0x4b5536
mov esi, dword [esp + 0x4c]
rol ecx, 2
xor ebx, edx
or ebx, ecx
sub edx, 0xbac7ec3
sub edx, ecx
dec ecx
jmp 0x4b4425
xor eax, eax
xchg edx, ecx
not ebx
and ebx, 0xbb2af8d
rol ebx, 0x19
xchg edi, ebx
and ebx, 0xbb37131
add edi, edx
xchg ebx, edi
add ecx, 0xbb44011
mov ecx, edx
shr ecx, 0x1b
and edi, edx
jmp 0x4b45f4
inc dword [esp + 0x90]
sub ebx, edx
and ecx, edx
xor ecx, edi
mov ebx, 0xbb9d3a9
sub edi, 0xbba2639
add edx, 0xbba66e3
and ecx, edx
or edx, edi
xor ecx, edx
and edi, edx
or ebx, edi
sub ecx, edi
jmp 0x4b592c
mov esi, dword [esi]
xchg edx, ebx
xor ecx, edi
sub ecx, edi
rol ebx, 8
shl ebx, 1
and ebx, ecx
jmp 0x4b6977
add dword [esp + 0x74], 4
or ecx, edx
and ecx, 0xc01fbf1
add edi, edx
not edx
xchg ecx, edi
xor ebx, edi
and ebx, edi
sub edi, edx
xor edi, ecx
bswap ecx
jmp 0x4b606e
mov esi, dword [esp + 0x68]
xchg ecx, edx
sub ecx, 0xc049811
shr edx, 1
or ecx, ebx
sub edx, 0xc055837
xor edx, edi
or edi, 0xc05e87f
xchg ebx, ecx
jmp 0x4b42f8
add esi, 0x18
mov edx, ecx
sub ebx, 0xc0ae5d9
and edx, edi
and edi, 0xc0b6431
mov ebx, 0xc0bb5bf
and ebx, ecx
rol edx, 4
xchg ebx, edi
or ebx, edx
neg edi
xor edi, edx
xor ecx, edi
jmp 0x4b690a
push esi
inc edi
xchg edx, ecx
add edx, edi
sub ebx, edx
inc ecx
add edx, ecx
jmp 0x4b5570
add esi, 0x3c
xchg ebx, ecx
add edx, ebx
xchg edi, ebx
or edi, 0xc22154b
and edi, ecx
xor edx, edi
sub ecx, ebx
xor ecx, edx
jmp 0x4b44a2
mov esi, dword [esp + 0x4c]
shr edx, 6
dec edi
sub edi, 0xc29c4df
sub edi, ebx
jmp 0x4b703f
inc esi
mov ecx, edx
shl ebx, 0x1c
and edi, 0xc2f3f6f
sub ebx, 0xc2f8041
jmp 0x4b5d7f
add esi, dword [esp + 0x68]
sub edi, ebx
shr edi, 0x11
add edi, edx
or edi, ebx
add ebx, ecx
shr edx, 0x1e
ror ecx, 0x10
xor edi, edx
mov ecx, 0xc54dd5f
neg edx
jmp 0x4b4635
cmp byte [esi], 0
jmp 0x4b433d
add dword [esp + 0x4c], 4
xchg ecx, edi
mov ebx, 0xc7251cd
and ebx, edx
ror ecx, 0x14
xchg edi, ebx
add ebx, ecx
and edi, ecx
shr edx, 0xe
add edi, edx
or ebx, ecx
mov ebx, edx
or ebx, 0xc7647ff
jmp 0x4b6042
mov esi, dword [esp + 0x90]
mov edx, 0xcaca6d5
xchg ecx, edx
xchg edx, edi
and ebx, ecx
mov edi, edx
mov edi, ebx
and ecx, edx
add ebx, 0xcaf8a5b
mov edx, ebx
sub ecx, edx
or edi, 0xcb0dba7
and edi, edx
jmp 0x4b4386
mov esi, dword [esp + 0x4c]
add ecx, ebx
or edi, 0xcb23cdf
not ecx
or edx, ebx
and edx, edi
bswap edi
dec edi
sub ebx, edi
or edi, edx
and ebx, edi
ror edx, 0xd
add edx, edi
and ebx, edx
or ebx, ecx
jmp 0x4b69cd
mov esi, dword [esp + 0x74]
or ebx, edi
mov edx, edi
neg edx
xchg edx, ecx
sub ecx, ebx
not ebx
xor ebx, 0xcbabe21
mov ecx, 0xcbb29bd
sub ecx, edi
add ecx, 0xcbc1295
jmp 0x4b56b2
mov dword [esp + 0x74], esi
add ebx, edi
mov ecx, edx
xor ebx, 0xcd268f1
add ebx, ecx
or ecx, edi
and ebx, edi
bswap edi
rol ecx, 9
mov edx, 0xcd50317
mov ecx, 0xcd57539
and ebx, edi
dec ecx
jmp 0x4b55c4
mov dword [esp + 0x4c], esi
mov edi, 0xd1a2be1
sub ebx, 0xd1a9ccf
xor ebx, edx
xor edi, 0xd1b70d9
neg edi
inc edi
add ecx, ebx
rol ebx, 0x17
or ecx, 0xd1dab8b
and ecx, edi
shl edi, 8
add ecx, ebx
xor edx, edi
add edx, ecx
shl edi, 0xc
ror ebx, 0x15
jmp 0x4b6be7
sub dword [esp + 0x4c], 8
mov edi, 0xd212fe3
dec edi
ror edi, 0x18
or edi, ecx
sub edx, ecx
or ebx, edx
and ebx, 0xd23c747
sub edx, ecx
xor edx, 0xd24b52f
xchg ecx, edi
and edx, edi
xchg edx, ebx
shr edi, 8
xor ecx, edi
jmp 0x4b5b18
mov esi, dword [esi]
add ecx, edi
xor edx, edi
neg ecx
dec ebx
or edi, ebx
add ebx, edx
xor edx, 0xd29efdf
or ebx, 0xd2a5981
jmp 0x4b59a0
add esi, dword [esp + 0x68]
and edx, edi
ror edx, 5
sub ebx, 0xd412b83
shl ecx, 0xa
shr edx, 7
sub ecx, 0xd427037
add edi, edx
xor ecx, ebx
shr edx, 0xd
xor edi, 0xd443a89
jmp 0x4b6353
mov dword [esp + 0x68], esi
add edi, edx
xor edx, 0xd4f0285
sub edx, edi
not edi
sub edx, 0xd504f19
and ecx, 0xd50be3f
sub ecx, edx
add ecx, edi
or edx, ebx
sub ecx, ebx
and ecx, edx
xor ecx, edi
sub edi, 0xd53caad
and edx, edi
jmp 0x4b7338
add esi, dword [esp + 0x90]
and edx, ebx
mov edx, 0xd817cf7
or ebx, ecx
nop
sub edx, ecx
dec edx
xor ecx, ebx
dec ebx
xchg edi, edx
xor edx, ecx
rol ebx, 0x13
sub edi, edx
jmp 0x4b446d
mul esi
neg edx
xor ebx, ecx
shr ecx, 0x1b
rol ebx, 1
or edi, ecx
inc ecx
or ebx, 0xd99531d
or edi, edx
mov edi, edx
xchg ebx, edx
neg edi
or ecx, 0xd9b6185
sub ebx, 0xd9bc9cf
xor ecx, edi
sub ebx, ecx
add edi, 0xd9cffc3
jmp 0x4b5496
add esi, dword [esp + 0x68]
shl edi, 7
or edx, ecx
ror ecx, 0xd
inc ebx
xchg ebx, ecx
bswap edx
ror ebx, 0x13
xor edi, 0xdc693ff
xor edx, ecx
bswap edi
mov ecx, edi
or ecx, 0xdc83f7b
jmp 0x4b7027
mov esi, dword [esi]
rol edx, 8
not ecx
and edx, ebx
dec edi
jmp 0x4b6506
ret
add esi, dword [esp + 0x68]
mov ebx, ecx
xor edi, ebx
xor edx, ebx
or ebx, 0xddfc009
xor edx, 0xde053e9
and ecx, 0xde09da7
and edi, edx
dec edi
jmp 0x4b5a67
mov esi, dword [esi]
not ebx
neg ebx
not ebx
sub ecx, ebx
xor ecx, edi
mov ecx, edx
dec edi
add ecx, edx
dec edx
xor edi, ebx
jmp 0x4b5d3d
add dword [esp + 0x4c], esi
sub edx, 0xe01e26b
or ebx, 0xe0221ed
ror edx, 0x19
and edi, 0xe02a0a7
xor ecx, edi
bswap edi
ror edi, 0xd
and ecx, ebx
sub ecx, 0xe03eaef
add edi, 0xe0429b5
jmp 0x4b5048
mov esi, dword [esp + 0x74]
xor ecx, edx
dec edi
and edx, ebx
sub edi, ecx
xor ebx, 0xe0de7d5
rol ecx, 0xd
and edi, edx
add edx, 0xe0ea3b5
xor ecx, 0xe0ee2b7
inc ebx
jmp 0x4b66a2
mov dword [esp + 0x6c], esi
mov ecx, edi
and edi, ebx
xchg ebx, ecx
not ecx
mov ebx, 0xe30ab8b
xor ebx, 0xe30e775
jmp 0x4b7550
add esi, 0xc
xor edx, ebx
neg edx
add ebx, 0xe35b7ab
or ecx, 0xe35f317
xchg ecx, edi
sub ecx, 0xe366a8d
mov edx, 0xe36b7d1
mov ebx, ecx
sub ecx, edx
sub ebx, edi
sub ecx, edi
add ebx, edi
jmp 0x4b4f0a
mov eax, 2
inc edx
shl ecx, 3
nop
bswap edx
xor ecx, edi
xor ebx, edx
shl ecx, 0x1f
and edx, 0xe3ae751
jmp 0x4b6013
mov dword [esp + 0x74], 0
shr edx, 6
inc edx
not edx
neg ecx
and edx, 0xe4c0623
xor edi, edx
mov ecx, ebx
xor edx, ebx
dec edi
dec ebx
neg ecx
shr edx, 0x15
and edx, ecx
rol ecx, 0x19
ror edi, 0xb
sub ecx, edi
jmp 0x4b77fa
add esp, 0xac
or edx, ebx
or edx, edi
and edx, ebx
mov edi, ebx
add edi, ebx
shr edi, 0xa
jmp 0x4b6919
mov esi, dword [esi]
bswap edi
mov ebx, edx
not ebx
xor edx, ebx
xor ecx, ebx
sub ebx, ecx
jmp 0x4b648e
mov dword [esp + 0x4c], 0
dec edx
not ebx
add edi, ecx
add ebx, edi
xor ecx, edi
shl ebx, 5
and edx, ecx
or ecx, ebx
jmp 0x4b6d86
mov esi, dword [esp + 0x68]
mov edi, 0xe9cff75
or edi, ecx
bswap edx
xor edi, ecx
xchg ebx, ecx
and ecx, edi
sub ecx, 0xe9e7ac3
add ecx, 0xe9ebaaf
sub ecx, edi
xor edi, 0xe9f498d
jmp 0x4b5ab4
mov esi, 0x30
mov edx, ecx
and ebx, edi
sub ebx, edi
xor edi, edx
sub edi, ebx
mov edx, 0xec38103
neg ecx
or ebx, 0xec413d1
sub ecx, edx
ror edx, 0xd
xchg edx, edi
sub edi, edx
jmp 0x4b5473
mov dword [esp + 0x90], 0
xchg edi, edx
add edx, ecx
or ecx, 0xedd0f8f
not edi
rol edi, 2
and ecx, edx
jmp 0x4b6f19
rol eax, 8
xor edx, edi
add ecx, ebx
neg ebx
shr ebx, 0x13
shr edi, 0xb
or ebx, 0xee60183
mov ecx, edi
sub ecx, 0xee67d5b
add ebx, edx
mov edi, edx
shl edx, 1
sub edi, ebx
xchg ebx, edi
shl edi, 0xc
bswap edi
mov edx, ecx
jmp 0x4b5b68
mov esi, dword [esi]
and ebx, edi
xor edi, 0xee9893b
add edi, ecx
bswap edi
mov edi, edx
sub ebx, edi
or edx, ecx
shl ecx, 5
and edx, 0xeeb4ea7
xchg edx, ecx
sub ecx, edx
sub edi, 0xeec0a7b
jmp 0x4b545e
mov dword [esp + 0x68], 0
add ebx, edi
xor edi, 0xef5a923
sub edx, ebx
xor edi, 0xef637ed
add ecx, edx
xchg ebx, edi
jmp 0x4b7135
mov esi, dword [esi]
sub edx, ecx
or ebx, ecx
and edi, edx
or edi, ecx
and ebx, ecx
mov ebx, edx
and edx, ebx
sub ecx, ebx
add ecx, ebx
or edi, ebx
and ecx, edi
add edi, ecx
and ebx, edx
or edi, 0xefe44ff
or edi, ebx
xchg ecx, ebx
jmp 0x4b63c6
sub esp, 0xac
xor edi, edx
sub ecx, ebx
xchg edx, edi
xchg ebx, edx
jmp 0x4b76ba