Function at 0x4a3682
Capabilities:
Encrypt data using chaskey

Disassembly:
mov dword [esp + 0xf8], ecx
xor edx, ebx
xor ebx, 0xec931fb0
sub edx, 0xec936427
add edi, edx
jmp 0x4a30dc
mov dword [esp + 0xf8], 0
add esi, ebx
ror ebx, 4
ror esi, 0x15
inc esi
or ebx, esi
xchg edx, ebx
jmp 0x4a195e
mov ecx, dword [ecx]
mov edx, ebx
xchg edx, esi
shl edx, 6
ror ebx, 0x1f
neg ebx
sub esi, 0xeca2e15e
jmp 0x4a2b6b
add ecx, dword [esp + 0xa4]
sub ebx, edx
xchg ebx, edx
not ebx
dec edi
mov edi, esi
add edi, edx
and edx, 0xeca4a769
and edi, ebx
sub esi, ebx
add ebx, 0xeca56b1b
jmp 0x4a1e8f
add dword [esp + 0x2c], 4
nop
sub esi, ebx
sub esi, ebx
xchg ebx, edi
xor esi, 0xecb21ab9
jmp 0x4a0aeb
pop ecx
mov edi, edx
inc edx
and esi, edx
mov edx, ebx
add ebx, edx
or esi, ebx
jmp 0x4a27b1
mov ecx, dword [ecx]
not ebx
xor ebx, edi
mov edi, ebx
xor esi, edx
and esi, ebx
ror esi, 0x1d
and esi, 0xecbb66b1
add edx, edi
sub ebx, 0xecbbeb98
jmp 0x4a0ba7
push ecx
xchg ebx, edx
ror edx, 1
and ebx, edi
shl edi, 0x16
mov edi, ebx
mov ebx, edx
jmp 0x4a2a3b
mov ecx, dword [esp + 0xf8]
add ebx, 0xecf653ae
or edi, 0xecf692e2
sub ebx, 0xecf6dba9
mov edx, edi
xor edi, edx
jmp 0x4a2671
mov dword [esp + 0x2c], ecx
add edx, edi
shl ebx, 0x14
shr edx, 0x14
jmp 0x4a2ad3
mov ecx, dword [esp + 0x2c]
neg ebx
rol edi, 0xc
and edx, 0xed04a6f3
shr esi, 0x1d
shl edx, 3
rol ebx, 0xe
rol edx, 0x12
xchg edx, ebx
add ebx, edi
xchg ebx, edi
or edi, esi
sub edx, ebx
jmp 0x4a2b1a
mov ecx, dword [ecx]
mov edx, esi
sub edi, esi
sub edx, 0xed082a36
xor esi, edi
bswap edx
xor ebx, edi
sub esi, edi
neg esi
and edx, esi
xchg ebx, esi
jmp 0x4a06de
inc ecx
add edi, ebx
and edi, edx
and edx, ebx
and edi, edx
bswap edi
add edi, esi
sub ebx, esi
xchg esi, edi
jmp 0x4a2020
mov ecx, dword [ecx]
sub ebx, edx
mov edi, 0xed1c3240
xchg edx, esi
and esi, ebx
add esi, ebx
dec edi
add ebx, esi
jmp 0x4a2346
mov dword [esp + 0xf8], ecx
add edi, 0xed383d07
add esi, 0xed387c4a
and edx, ebx
and edx, edi
rol esi, 0x11
xor ebx, edx
xor edx, 0xed39f7c5
jmp 0x4a0f75
mul ecx
xchg edx, edi
add esi, edx
ror ebx, 0x18
jmp 0x4a1f97
mov eax, 2
or esi, 0xed67486a
and edi, esi
ror ebx, 0x19
xor esi, ebx
and edx, ebx
sub ebx, edx
and edx, ebx
sub edx, esi
or ebx, 0xed693d86
add edx, edi
shr edx, 3
sub edi, ebx
xchg edx, edi
jmp 0x4a2e2b
jne 0x4a30dc
xchg esi, ebx
bswap ebx
or esi, edx
or esi, ebx
mov edx, edi
ror ebx, 0xa
not edi
neg edx
or edx, ebx
jmp 0x4a077e
add ecx, dword [esp + 0xa4]
mov esi, edi
add edx, ebx
xor edx, 0xed7204d8
and ebx, 0xed7247d8
neg esi
bswap ebx
xor ebx, edx
rol esi, 0x10
rol edx, 0x12
sub edi, esi
rol esi, 0xc
mov edx, 0xed744aee
jmp 0x4a0611
mov dword [esp + 0x94], ecx
sub edi, ebx
mov ebx, edx
neg ebx
bswap edi
and ebx, 0xed80d0cb
xor edi, edx
mov esi, edi
xor ebx, esi
and edx, esi
jmp 0x4a13b6
add ecx, dword [esp + 0xa4]
or edi, ebx
dec ebx
sub edx, 0xed829734
sub edi, 0xed82d6b3
sub ebx, 0xed83162b
and edi, 0xed835168
or edx, edi
xor edx, esi
add edi, 0xed841538
shr edx, 0x1b
or edx, edi
xchg edi, esi
mov ebx, 0xed851282
jmp 0x4a2053
mov ecx, dword [ecx]
not edx
xchg edi, esi
add esi, 0xed936f6d
not esi
add edx, ebx
rol edx, 0xc
jmp 0x4a1d90
mov ecx, dword [ecx]
xor ebx, esi
xor ebx, 0xed96c793
or edx, ebx
mov edx, 0xed9742f5
sub edi, esi
dec ebx
sub ebx, esi
dec edx
sub edx, edi
sub esi, ebx
xor edx, ebx
not esi
and esi, 0xed997926
add edi, edx
jmp 0x4a1000
mov dword [esp + 0xa4], ecx
xor edi, 0xedb685d7
sub edi, edx
mov edi, edx
add edi, esi
shr edx, 0x11
xchg edi, ebx
xchg edi, edx
shl esi, 0x13
jmp 0x4a17dd
mov ecx, 0x30
sub ebx, edi
xor esi, edi
add esi, edx
bswap ebx
sub edi, edx
xor esi, edx
mov ebx, edx
xchg ebx, edi
nop
and edx, edi
add esi, ebx
rol edi, 0xe
not edx
jmp 0x4a1809
add dword [esp + 0x2c], eax
xor ebx, edx
neg esi
sub esi, edi
rol ebx, 0xd
xor esi, edx
xor esi, edi
or esi, 0xee18f89c
or edx, esi
and edx, 0xee197492
and esi, 0xee19b42d
or esi, 0xee19f7e8
sub esi, ebx
and edx, esi
jmp 0x4a1e4f
add ecx, dword [esp + 0x54]
sub ebx, edi
or ebx, edi
or edx, esi
inc edi
sub edx, edi
add ebx, 0xee2e7ad6
add edx, 0xee2eb5e9
and ebx, edi
xor ebx, 0xee2f31ac
shl ebx, 0x1c
and edx, 0xee2fb117
neg esi
jmp 0x4a1ee5
mov ecx, dword [esp + 0xa4]
and edx, esi
add ebx, edx
rol edx, 7
xor esi, ebx
and ebx, edi
inc edx
or edx, edi
mov edi, 0xee36a4b4
xor esi, ebx
xor edx, ebx
add edi, edx
xor esi, edx
xor ebx, edx
or esi, edx
inc ebx
jmp 0x4a1c88
mov ecx, dword fs:[ecx]
ror esi, 0x14
and edx, edi
and edi, edx
sub ebx, edx
jmp 0x4a1f20
mul ecx
dec esi
add esi, 0xee4c3bf1
and edi, esi
jmp 0x4a1691
mov ecx, dword [esp + 0x2c]
rol ebx, 6
mov edi, ebx
and ebx, esi
and edx, edi
xor edx, ebx
xor esi, edi
ror ebx, 0x1e
or edi, ebx
xor edi, edx
or edi, esi
inc edx
jmp 0x4a1ac8
mov dword [esp + 0xa4], 0
and edx, edi
sub edx, ebx
rol esi, 0xd
sub ebx, edx
jmp 0x4a1e6b
add dword [esp + 0x2c], 0x78
mov esi, 0xee6049b4
mov edi, ebx
sub edi, esi
inc edx
xor edx, ebx
xor esi, edx
neg esi
and edi, ebx
and ebx, edi
rol esi, 4
xor ebx, edi
add edx, 0xee63436f
and esi, 0xee638c3e
mov esi, edi
xor ebx, esi
jmp 0x4a25a5
add ecx, dword [esp + 0x2c]
sub ebx, esi
sub esi, edx
rol edi, 5
ror edi, 0x13
not ebx
jmp 0x4a2bd2
mov ecx, dword [ecx]
sub ebx, edx
xor edi, 0xee6e979b
and edi, 0xee6ed6be
neg esi
xchg esi, ebx
sub ebx, 0xee6f90e2
xchg esi, edx
and ebx, 0xee701840
add edi, edx
rol esi, 0x1e
or edx, esi
mov edi, 0xee7170d3
shl edi, 0x1d
jmp 0x4a10d7
jne 0x4a1eb0
xchg ebx, edi
mov esi, ebx
sub edi, edx
sub edi, edx
or esi, edx
or edi, ebx
ror edi, 0x1a
neg ebx
jmp 0x4a0798
add ecx, 0x3c
xor esi, ebx
dec edi
mov edx, edi
mov esi, ebx
sub ebx, edi
neg edi
jmp 0x4a06c5
add ecx, 0xc
and edx, edi
not edi
shl edi, 0xf
mov edi, esi
sub ebx, 0xeeb079d8
or edx, esi
sub edi, edx
jmp 0x4a0800
mov ecx, dword [esp + 0x2c]
xor ebx, edi
or edi, esi
sub esi, ebx
not ebx
add edx, esi
mov ebx, edi
xor ebx, edx
not edi
jmp 0x4a0b18
mov dword [esp + 0x2c], 0
sub edx, edi
xor edi, ebx
xor ebx, edx
or edi, 0xeec302f4
and ebx, edx
add ebx, 0xeec37f31
jmp 0x4a10b5
add esp, 0x12c
nop
inc edi
add ebx, esi
and ebx, esi
xor edi, 0xeec4cb0d
or esi, ebx
dec edx
rol edi, 0xa
xchg edx, edi
xor ebx, esi
jmp 0x4a1ffd
xor al, byte [ecx]
mov ebx, 0xeec65890
xchg edx, edi
and edx, 0xeec6e3f3
jmp 0x4a2173
mov eax, 4
shr edx, 0xb
not edx
not edi
sub edx, ebx
rol edx, 9
sub ebx, 0xeecbe38c
rol esi, 1
xor ebx, edx
ror edi, 0x1e
mov esi, 0xeecdb152
or edi, ebx
jmp 0x4a2b44
add ecx, 0xc
or edi, esi
add ebx, edi
sub esi, edx
mov ebx, 0xeed17a65
sub esi, edi
xor edx, edi
shr edi, 0x12
neg edi
and edx, edi
mov edx, esi
jmp 0x4a1199
add dword [esp + 0x2c], 0x20
mov edx, edi
and edi, esi
rol esi, 5
mov ebx, 0xeed4fe5c
mov ebx, esi
and ebx, edx
mov ebx, esi
add edx, edi
or esi, edi
jmp 0x4a20ef
mov dword [esp + 0x54], eax
xchg esi, edx
and ebx, esi
inc edi
not edi
jmp 0x4a31bd
ret
cmp byte [ecx], 0
jmp 0x4a1afe
mov dword [esp + 0x2c], ecx
or edx, edi
mov ebx, 0xeee79303
and edi, ebx
sub esi, ebx
shl edi, 4
sub edx, 0xeee89178
rol ebx, 0xd
neg ebx
jmp 0x4a2eac
mov ecx, dword [esp + 0x2c]
xor ebx, edx
shr edi, 0x18
and ebx, edi
or esi, 0xeef8873d
mov ebx, esi
jmp 0x4a11ce
add ecx, dword [esp + 0xa4]
and edx, esi
xor edi, esi
xchg edi, esi
and edi, ebx
xor edx, ebx
bswap edi
xor edi, ebx
or ebx, edx
and edx, ebx
jmp 0x4a0a4e
rol eax, 8
sub esi, edi
neg ebx
or edi, ebx
and edx, edi
nop
or esi, ebx
ror esi, 0xd
rol edx, 1
add ebx, 0xef02b3d4
sub edi, edx
shr edx, 0x1d
jmp 0x4a0b91
mov ecx, dword [ecx]
xchg edx, ebx
sub edx, edi
and ebx, esi
xchg esi, ebx
add edx, edi
rol ebx, 1
mov esi, edx
xor esi, edx
add ebx, 0xef08c2b5
dec ebx
shl edi, 3
and esi, 0xef09822d
xchg edx, edi
add esi, edx
add edi, ebx
xor ebx, 0xef167090
jmp 0x4a12d5
mov ecx, dword [ecx]
xor edx, ebx
add ebx, edi
and ebx, 0xef38a6c4
mov edi, edx
mov edx, 0xef398af4
or edi, 0xef3a0229
or edi, esi
jmp 0x4a2895
mov ecx, dword [esp + 0xa4]
add edx, esi
sub ebx, edx
mov edi, 0xef6e85bd
xchg edi, ebx
sub edx, ebx
xor edi, ebx
or ebx, 0xef6f8901
add edi, 0xef6fc8d1
bswap edx
neg edx
or esi, ebx
mov esi, edx
mov ebx, edx
jmp 0x4a1a45
mov ecx, dword [ecx]
xor ebx, edx
dec edi
mov edi, 0xef7d24ca
sub ebx, 0xef7d6429
add edi, esi
jmp 0x4a210a
cmp eax, dword [esp + 0x94]
jmp 0x4a0fe2
add ecx, 0x18
rol edi, 0x11
xchg ebx, edi
xchg ebx, edi
or edx, edi
mov edx, 0xefa47901
sub ebx, edi
dec ebx
and edi, 0xefa534f4
add esi, ebx
or esi, 0xefa5b3f3
jmp 0x4a21cb
add ecx, dword [esp + 0xa4]
bswap ebx
not esi
mov ebx, edx
and ebx, esi
and esi, edi
and ebx, 0xefad979f
shr esi, 0x10
mov ebx, esi
jmp 0x4a0d3d
xor eax, eax
xchg edi, edx
and edx, edi
or edi, ebx
xor ebx, 0xefc3dfb1
add ebx, 0xefc42466
jmp 0x4a1eb0
mov ecx, dword [esp + 0xa4]
xor edi, esi
dec ebx
nop
and ebx, edx
or esi, edi
add edx, 0xefd32a40
and edx, esi
dec edx
shl esi, 0x1a
sub edi, ebx
xchg ebx, edi
and esi, ebx
or edi, edx
xchg esi, edi
jmp 0x4a2d88
mov ecx, dword [ecx]
bswap edx
and esi, 0xefd8bfee
add edx, 0xefd91192
and edx, ebx
neg edi
sub esi, edx
not edi
xchg edx, edi
and edi, ebx
bswap edx
mov esi, ebx
rol edi, 6
mov edi, edx
jmp 0x4a2915
movzx ecx, word [ecx]
add edx, esi
and esi, edi
shr edi, 7
sub edi, esi
xor edi, 0xefdd5341
and esi, edi
ror ebx, 4
ror edi, 1
xchg esi, edx
or ebx, 0xefde9409
jmp 0x4a18ff
mov dword [esp + 0x2c], ecx
xor ebx, esi
and esi, ebx
dec edx
nop
xchg ebx, edi
add ebx, 0xefe01e6f
add ebx, esi
jmp 0x4a1a0f
mov ecx, dword [ecx]
and edi, 0xefe4e8d6
add edx, edi
xchg edx, edi
xor ebx, edi
jmp 0x4a0a84
add dword [esp + 0xf8], 4
or edx, esi
neg edi
jmp 0x4a0a62
add dword [esp + 0x2c], ecx
xor edi, edx
inc ebx
xchg ebx, edx
inc esi
sub ebx, 0xf0058b40
mov edx, esi
bswap edi
jmp 0x4a1f40
mov ecx, dword [esp + 0x54]
and ebx, esi
and ebx, esi
xor ebx, edi
neg edx
xchg ebx, edi
shl ebx, 0x18
mov edi, esi
or ebx, edx
nop
xchg edx, ebx
jmp 0x4a0da5
mov ecx, dword [esp + 0xf8]
shr edi, 0x12
not ebx
dec edx
and esi, edi
and edx, ebx
or esi, edx
and ebx, edx
dec edx
add ebx, edi
ror ebx, 0xc
bswap esi
ror edi, 0xe
sub ebx, edx
jmp 0x4a1762
inc dword [esp + 0x54]
rol edi, 1
sub edx, ebx
rol edi, 2
xor esi, edi
inc edx
inc ebx
sub ebx, 0xf044711b
shl edi, 0x1e
xor esi, 0xf044f096
jmp 0x4a2cf2
sub dword [esp + 0x2c], 8
or esi, ebx
rol esi, 9
and edi, esi
and ebx, edx
or edx, 0xf05576ba
and ebx, edi
xor edx, ebx
xchg edx, ebx
rol ebx, 0x10
and edx, 0xf056abdc
neg edi
jmp 0x4a1924
mov dword [esp + 0x54], 0
inc ebx
shl esi, 9
add edi, edx
and edx, edi
add esi, ebx
neg edx
sub ebx, esi
or esi, edx
inc ebx
jmp 0x4a064b
sub esp, 0x12c
mov edi, ebx
xchg esi, ebx
rol edi, 5
or ebx, esi
and edi, ebx
jmp 0x4a31ea