Function at 0x4bacd8
Capabilities:
Encrypt data using chaskey

Disassembly:
mul ecx
xor edi, esi
or ebx, esi
jmp 0x4bab97
add ecx, dword [esp + 0xc]
nop
and edx, esi
sub edi, 0x73d08e80
xor edi, edx
or esi, ebx
jmp 0x4b759f
add dword [esp + 0xf0], 0x78
sub ebx, edx
inc esi
not edx
add edi, ebx
rol ebx, 0xe
sub esi, edx
and edx, ebx
xor edi, esi
shl edi, 0xf
bswap edx
or ebx, edi
jmp 0x4b929d
add esp, 0x118
bswap edi
add ebx, edi
sub esi, ebx
and edx, esi
add edi, 0x73ed4a09
shr esi, 0x1e
or esi, 0x73ef62db
rol ebx, 0x13
mov edi, esi
xchg esi, edi
add ebx, esi
add edi, esi
jmp 0x4b7dae
mov ecx, dword [ecx]
ror ebx, 0x1a
mov esi, edi
shl edi, 0xd
add ebx, edi
add edx, edi
xor edx, esi
or edi, 0x73f7a4a1
jmp 0x4b99b1
rol eax, 8
add ebx, edx
xchg edi, ebx
or ebx, 0x73f91fbf
dec edi
shr esi, 2
jmp 0x4b914f
mov ecx, dword [esp + 0xc]
shr edx, 4
rol esi, 7
sub edx, esi
bswap edx
sub edx, edi
and edi, ebx
or edi, 0x769f49d7
xor esi, edx
and esi, ebx
inc ebx
mov edi, ebx
jmp 0x4b8f79
mov dword [esp + 0xf0], ecx
rol esi, 0x1a
and esi, edx
xor esi, ebx
bswap edi
xchg edx, edi
xchg edi, edx
rol edx, 0x12
or edx, esi
jmp 0x4b74fc
mov ecx, dword [ecx]
and edi, ebx
or edx, edi
and edi, esi
mov edx, esi
xor edi, edx
sub esi, edi
sub ebx, edx
or edx, esi
jmp 0x4ba872
pop ecx
neg ebx
shl edx, 0x10
and edx, 0x78229788
or esi, 0x7822db25
mov edi, 0x7823157a
not ebx
mov edx, 0x782396e9
mov edi, 0x7823e297
mov edi, ebx
mov ebx, edi
xchg ebx, edi
xchg edi, esi
jmp 0x4bab8b
mov dword [esp + 0xb8], 0
and ebx, esi
add edi, edx
or esi, ebx
add edi, ebx
or ebx, 0x78362fb1
sub edx, edi
jmp 0x4b869f
mov ecx, dword [ecx]
sub ebx, 0x783a7694
xchg esi, edi
xchg esi, ebx
jmp 0x4b806d
ret
mul ecx
sub edx, ebx
shr edi, 0xd
mov ebx, edi
mov esi, 0x78b64389
neg edi
sub edx, 0x78b6bc95
xor ebx, 0x78b6fe8f
shl esi, 7
or ebx, edi
add esi, ebx
xchg esi, ebx
xchg ebx, esi
jmp 0x4ba364
add ecx, dword [esp + 0xc]
xchg esi, ebx
mov ebx, esi
shl esi, 7
ror edi, 0x1f
mov edi, edx
xor ebx, 0x7928f294
not edx
mov edx, ebx
sub esi, 0x7929e2a6
bswap edi
sub edi, 0x792a5c4c
sub edi, 0x792a9ed8
and esi, ebx
jmp 0x4b9d5d
mov ecx, dword [ecx]
sub ebx, 0x795a8ed6
and edx, 0x795b14e2
shl esi, 6
add edx, esi
shr edi, 0x19
bswap esi
and edx, esi
jmp 0x4b78a9
mov ecx, dword [ecx]
sub edx, edi
mov ebx, edi
rol edx, 8
mov edi, ebx
or ebx, 0x795ec42e
xchg ebx, edi
sub esi, edx
xor edi, esi
xor edx, 0x795fb9cc
dec esi
xchg esi, edi
jmp 0x4b82dd
add ecx, dword [esp + 0xc]
neg edi
or esi, ebx
and edi, esi
add ebx, edi
xor edx, 0x79b6119f
xor edx, esi
xchg esi, edi
or esi, edi
sub edx, edi
rol ebx, 0xe
or edi, esi
and edx, ebx
and edi, ebx
jmp 0x4b8dce
mov ecx, dword [ecx]
xchg edi, esi
sub ebx, edi
shl edx, 0xc
add edx, ebx
and ebx, 0x7a3fdfab
xor ebx, edi
shr esi, 0x1c
or ebx, esi
xchg ebx, edi
jmp 0x4b9a1b
mov ecx, dword [ecx]
or esi, edx
add esi, ebx
xor ebx, 0x7a559e4c
or edx, 0x7a55d865
jmp 0x4b853c
mov ecx, dword [esp + 0xa8]
shl esi, 0x1f
add esi, edi
sub edx, 0x7a7b47ee
mov edi, ebx
and edi, ebx
add edx, edi
mov edx, 0x7a7cc139
sub edx, ebx
not edx
and ebx, 0x7a7db587
rol edx, 0x1f
xor esi, 0x7a88c141
jmp 0x4b7de3
jne 0x4b988b
xor ebx, 0x7a895e08
and ebx, esi
add edx, 0x7a8a3f6f
sub ebx, edx
sub esi, ebx
sub edi, ebx
xchg esi, edx
jmp 0x4b7bf5
movzx ecx, word [ecx]
sub edx, 0x7a9dc65e
add ebx, edx
dec esi
xchg edi, esi
ror edx, 0x11
xor esi, edx
jmp 0x4b73f3
mov dword [esp + 0xf0], ecx
xchg edx, edi
ror esi, 0xe
dec esi
ror edi, 0x13
inc ebx
add edi, 0x7ac71e3e
dec esi
xor edi, esi
and esi, ebx
sub esi, 0x7acdce8d
add edx, ebx
xchg esi, edx
neg edi
jmp 0x4b96af
mov eax, 4
and edx, esi
mov edx, edi
mov edx, ebx
jmp 0x4b84bf
mov dword [esp + 0xc], 0
xor esi, edi
add edx, 0x7b0e6e3f
mov edi, edx
sub edi, ebx
not edi
xchg edx, ebx
xchg esi, edx
neg esi
jmp 0x4b9352
mov ecx, dword [esp + 0xb8]
or ebx, edx
sub esi, ebx
bswap esi
sub ebx, edx
ror edx, 0x10
jmp 0x4b8bef
mov dword [esp + 0xb8], ecx
mov edx, ebx
and edi, 0x7b306f7f
sub edx, edi
or edi, edx
xchg esi, ebx
jmp 0x4b91bf
mov ecx, dword [ecx]
dec edi
and edi, 0x7bd7c933
sub edi, 0x7bd84264
or ebx, edx
add esi, ebx
xchg esi, edi
and ebx, 0x7bdc3e7a
shl edx, 0x1a
jmp 0x4b8ce1
mov dword [esp + 0xf0], ecx
shl ebx, 5
xchg esi, ebx
add edi, esi
mov ebx, esi
mov esi, ebx
add ebx, edi
xchg edi, ebx
mov edx, ebx
and ebx, esi
and esi, edx
shr edx, 0x1d
sub esi, edx
xor edi, esi
jmp 0x4b86e9
add ecx, dword [esp + 0xa8]
xor edx, ebx
neg edi
xchg edi, edx
xchg edi, ebx
ror edx, 0x1d
add esi, ebx
sub ebx, esi
xchg ebx, edx
neg ebx
sub edi, edx
xor esi, 0x7c9befec
xor esi, edi
and edx, edi
jmp 0x4b8654
mov dword [esp + 0xc], ecx
sub edi, edx
sub edi, esi
or ebx, 0x7cd3c0a0
sub ebx, edx
inc esi
xor ebx, edi
ror edx, 0x15
jmp 0x4b775d
mov dword [esp + 0xb8], ecx
and ebx, 0x7d97ed43
bswap ebx
mov esi, 0x7d98c96e
add ebx, edi
sub edi, 0x7d99a923
bswap edx
add esi, 0x7d9a9148
shr edx, 0x1a
add edi, ebx
sub edi, esi
sub esi, 0x7dad9af9
xor edx, edi
xchg ebx, edi
jmp 0x4bac40
mov ecx, dword [ecx]
sub esi, edi
inc ebx
xchg ebx, edx
xor ebx, esi
mov edx, ebx
sub edx, edi
and edi, 0x7dc7561f
or edi, esi
jmp 0x4b7458
mov ecx, dword [esp + 0xb8]
shr edx, 0x1b
sub esi, edx
shl esi, 0xc
dec edi
inc edx
mov esi, ebx
mov edx, esi
xchg ebx, edx
jmp 0x4b9a42
mov ecx, dword [esp + 0xf0]
dec esi
dec esi
mov esi, edi
dec ebx
neg edi
or ebx, edx
xor edi, esi
mov ebx, 0x7e2e2411
mov edi, ebx
not edi
neg ebx
jmp 0x4b75ef
mov ecx, dword [esp + 0xf0]
mov esi, edx
sub ebx, edx
add edi, 0x7e2fa09b
xchg edi, edx
or edx, 0x7e301eeb
shl esi, 6
or ebx, esi
or esi, 0x7e30dff9
jmp 0x4ba3ac
sub dword [esp + 0xf0], 8
not edi
xor edi, ebx
ror edi, 0xa
xor ebx, edi
add edi, edx
add edi, ebx
or esi, edi
add edi, ebx
xchg edi, esi
or edx, edi
xor edi, esi
bswap esi
jmp 0x4b8f2a
add ecx, 0x3c
and esi, edx
sub ebx, esi
sub ebx, edi
and edi, 0x7e3a0a41
inc edi
and edx, 0x7e3a8d20
xor ebx, edx
shl edi, 0x1a
mov esi, edx
add esi, edi
jmp 0x4b804e
mov ecx, dword [ecx]
xchg edi, esi
add edx, esi
inc esi
not edi
mov esi, ebx
mov esi, ebx
xor ebx, edx
jmp 0x4b8137
inc ecx
sub edi, 0x7eb06813
mov ebx, 0x7eb0b2d8
xchg edi, ebx
or ebx, edx
jmp 0x4b9337
inc dword [esp + 0xa8]
sub esi, 0x7ebb0e35
mov esi, edx
mov ebx, esi
add edi, 0x7ebc530b
and edx, ebx
or esi, 0x7ebd3c82
add ebx, esi
ror edx, 0xb
and ebx, esi
jmp 0x4baa2b
mov ecx, dword [esp + 0xc]
add esi, ebx
neg ebx
xchg ebx, edi
xchg edi, edx
jmp 0x4bad07
cmp byte [ecx], 0
jmp 0x4b8458
mov dword [esp + 0xf0], 0
xor edx, esi
mov edx, ebx
add edx, edi
xchg edi, ebx
add ebx, esi
or edi, esi
and esi, ebx
rol ebx, 0x12
add edi, edx
and edi, edx
inc edi
xor edx, esi
dec esi
and edi, edx
jmp 0x4b98a2
mov ecx, dword [esp + 0xc]
and ebx, edx
xchg edx, ebx
neg esi
mov esi, 0x80971e95
or edx, 0x8097582b
and esi, 0x809795bd
sub edx, edi
shr esi, 0xa
mov ebx, esi
add esi, 0x80989126
sub edi, ebx
shl ebx, 0x1b
add edi, edx
jmp 0x4b980f
add dword [esp + 0xf0], ecx
inc ebx
xor esi, edx
and esi, ebx
shl edx, 0x10
or edx, edi
mov edx, 0x80c4eaa8
and esi, ebx
bswap edi
add ebx, 0x80c730aa
xchg edx, edi
jmp 0x4ba96f
mov ecx, dword [esp + 0xf0]
ror edx, 9
or edi, esi
add esi, ebx
add edx, 0x80c878e8
bswap edx
rol edx, 5
and edx, esi
xchg ebx, edx
shr esi, 0xa
mov edx, 0x80cb5a25
ror edx, 0x1e
jmp 0x4b8ff5
xor al, byte [ecx]
inc ebx
rol edx, 8
inc edx
xor esi, 0x80cf654b
ror edx, 0x13
and edx, edi
jmp 0x4b760a
mov dword [esp + 0x8c], ecx
xchg ebx, edx
and edi, 0x80d06bfb
sub ebx, edi
add edi, esi
and ebx, esi
and esi, ebx
shr esi, 0xd
add ebx, edi
inc ebx
jmp 0x4ba3cf
jne 0x4b91bf
xor esi, ebx
sub edx, 0x80f0d8b8
sub edi, edx
not ebx
and edx, ebx
xor edx, esi
add ebx, esi
xchg ebx, esi
xchg edx, edi
jmp 0x4b9fd4
add ecx, dword [esp + 0xc]
ror edx, 0xd
xor esi, 0x80fdf55e
and edx, edi
or esi, ebx
jmp 0x4b8719
add ecx, 0x18
mov edi, 0x8109496e
inc ebx
xchg edi, edx
add esi, 0x810a0c0a
or edi, edx
mov ebx, esi
sub edx, edi
and ebx, 0x81113588
mov edi, 0x81117774
jmp 0x4b899f
mov ecx, dword [ecx]
rol ebx, 0x10
mov ebx, edx
bswap esi
neg ebx
dec esi
sub edi, ebx
xchg esi, edi
rol ebx, 0xd
xor ebx, edi
mov esi, ebx
xchg ebx, esi
add edx, 0x81146ddf
add edi, 0x81165c10
and edx, ebx
jmp 0x4b7f5a
push ecx
or edi, edx
xor ebx, edi
xchg edx, ebx
mov esi, edi
xchg edx, esi
neg esi
xchg edx, edi
jmp 0x4b9f07
add ecx, dword [esp + 0xc]
neg edx
sub ebx, esi
add esi, edi
shr esi, 0x1d
xor edi, esi
mov edi, ebx
or edx, 0x81f11871
xchg esi, ebx
xchg edi, ebx
sub esi, ebx
jmp 0x4b8bac
xor eax, eax
sub edx, esi
add esi, 0x824452e5
and ebx, esi
mov edx, 0x82455cc6
sub esi, edi
xchg edx, edi
add esi, 0x82474a40
xor esi, edi
xor edi, esi
and edi, esi
and ebx, 0x82498403
mov ebx, edx
jmp 0x4b988b
mov ecx, dword [esp + 0xf0]
not edx
add edi, 0x826e1b4b
mov edi, esi
sub esi, 0x8275117f
bswap edx
rol esi, 0x19
sub edx, esi
inc esi
xchg ebx, edi
nop
jmp 0x4b8e2e
mov dword [esp + 0xa8], 0
xor edi, 0x82874998
xor edx, esi
add edx, esi
xchg edi, edx
and ebx, edx
add edx, edi
sub esi, ebx
or esi, 0x828ac785
xchg edi, ebx
xor esi, edi
ror ebx, 0x10
jmp 0x4b7cd6
add dword [esp + 0xf0], 4
sub edi, esi
mov edi, 0x828d448d
xor edx, edi
or esi, edx
or edx, 0x828ec0b5
sub edi, ebx
neg edx
add ebx, 0x829024e5
jmp 0x4b9836
mov ecx, dword fs:[ecx]
add edi, esi
xor esi, edx
and edx, edi
and esi, ebx
or edi, edx
neg edi
add edx, 0x83378879
jmp 0x4ba63e
mov dword [esp + 0xa8], eax
neg edx
xchg edi, esi
nop
xor edx, 0x83da9693
xor edx, edi
jmp 0x4b8f53
mov ecx, dword [ecx]
and edi, 0x83ed6273
xchg edi, edx
add ebx, edi
sub edx, 0x83fbd98c
sub esi, edx
xor edi, edx
add ebx, edx
or esi, edx
xor ebx, edx
add esi, ebx
jmp 0x4b9e37
mov ecx, 0x30
mov edx, esi
or edx, 0x8401d342
sub esi, edx
ror ebx, 0x18
jmp 0x4ba194
add ecx, 0xc
mov esi, 0x84c0b744
and ebx, edi
mov edx, edi
shl esi, 0x17
or ebx, esi
add edi, ebx
or edx, 0x84c37f1c
jmp 0x4b7bde
add ecx, 0xc
add edx, 0x853ccb06
rol edi, 0x19
inc edx
mov ebx, esi
or esi, edi
or ebx, edi
rol edi, 8
rol edx, 0x13
sub edi, esi
jmp 0x4b7d11
add dword [esp + 0xf0], 0x20
mov edi, edx
xchg edi, ebx
xchg edx, edi
or edi, ebx
xor esi, edi
sub edi, ebx
add edi, ebx
jmp 0x4b8f08
add dword [esp + 0xb8], 4
xchg edx, esi
xor edx, edi
add ebx, edx
ror esi, 5
or ebx, edi
xchg esi, ebx
mov edi, esi
mov edi, 0x856d4046
or edi, ebx
sub edx, esi
mov edi, 0x856ea359
and esi, edx
xor edi, ebx
xchg edx, ebx
or edx, edi
jmp 0x4b8eba
cmp eax, dword [esp + 0x8c]
jmp 0x4b9957
add dword [esp + 0xf0], eax
mov ebx, edi
xchg edi, ebx
xchg ebx, esi
xchg ebx, edx
bswap ebx
rol ebx, 0x14
inc edx
and esi, 0x85936f24
or edi, edx
xor ebx, esi
jmp 0x4b9f59
mov eax, 2
or ebx, esi
xchg ebx, edi
xor ebx, esi
xchg esi, edi
or esi, edi
add ebx, esi
or esi, ebx
mov ebx, 0x85a0b618
xor esi, 0x85a0fe1d
xor edx, ebx
mov ebx, edx
neg ebx
and edx, 0x85a1ed96
and edx, 0x85a22f29
jmp 0x4b8423
sub esp, 0x118
or esi, edi
xchg ebx, esi
xor edx, esi
sub ebx, edx
jmp 0x4b9fa5
add ecx, dword [esp + 0xf0]
xor esi, 0x85b0cf4f
mov esi, ebx
not edi
inc esi
mov ebx, esi
add edx, edi
sub edx, esi
shr ebx, 0x1e
sub edx, ebx
rol edi, 7
xchg edx, ebx
jmp 0x4b8391