Function at 0x4ba942
Capabilities:
Encrypt data using chaskey

Disassembly:
add esi, 0x3c
mov edi, edx
add edi, ebx
and ecx, ebx
and edi, ecx
or ebx, 0x6e1083f7
sub ecx, edx
mov ebx, edx
sub ebx, edi
mov ebx, ecx
sub ebx, 0x6e12c3b4
sub ecx, 0x6e1329dc
jmp 0x4ba802
push esi
neg edi
xor edi, ebx
xor ecx, edx
sub edx, ecx
and edi, edx
and edx, ecx
xchg ebx, edx
mov edi, edx
rol ebx, 0xd
and edi, edx
add ecx, edx
mov edi, ebx
or ebx, edx
neg edi
jmp 0x4b7e05
add esi, dword [esp + 0xd0]
or ecx, edi
sub edx, ebx
and ebx, 0x6e23157b
rol edx, 0x12
and ebx, edx
rol ecx, 0xb
mov ecx, edi
and edi, 0x6e244a90
or ecx, edi
add ecx, edx
add ecx, edi
mov edx, 0x6e252d59
jmp 0x4b92c2
mov esi, dword [esp + 0xd0]
sub ebx, edi
sub edx, edi
mov ebx, edi
sub edx, 0x6e5bdbeb
sub ebx, edi
and edx, 0x6e5d03fe
add edi, ecx
inc edi
xor edi, ecx
add edi, ebx
dec ecx
jmp 0x4b994a
mov esi, dword [esp + 0x104]
xchg ebx, ecx
shr ecx, 0x13
inc edi
xor edx, 0x6e6e74df
dec edx
jmp 0x4b8994
add dword [esp + 0xf4], 0x78
sub edi, 0x6edcc547
ror ecx, 0xe
ror ebx, 0x12
xchg ecx, edi
shr ebx, 0x1c
xchg edi, ebx
shr edi, 1
mov edx, ebx
jmp 0x4b9652
add dword [esp + 0xf4], 4
and edx, 0x6f263768
mov ecx, ebx
add edi, edx
or edx, edi
or ecx, ebx
sub edi, 0x6f276048
mov edx, edi
or ebx, edi
ror ebx, 0xb
rol edx, 6
sub edx, ebx
and ecx, edx
shl ecx, 0x19
jmp 0x4baa07
mov dword [esp + 0xf4], esi
xor ebx, ecx
add edi, 0x6f5bba1d
nop
and ebx, edi
sub ecx, 0x6f5c707c
or ebx, 0x6f5cb2af
shl ecx, 0x16
mov edi, ecx
nop
add edx, 0x6f5db340
sub edx, 0x6f5ded98
shr edx, 0x16
mov ebx, edi
or ebx, edx
jmp 0x4b9775
mov dword [esp + 0xb8], esi
bswap ebx
and ecx, edx
xor ebx, edx
mov edx, ecx
and edx, 0x6f7d901d
add edx, ecx
xchg ecx, edx
add ebx, edi
and edx, 0x6f7f3585
jmp 0x4b9c10
xor eax, eax
and edi, edx
xchg ebx, ecx
nop
ror edi, 0xf
mov edi, 0x6f80795d
jmp 0x4b7f7f
xor al, byte [esi]
mov ecx, ebx
xor ebx, ecx
shr ecx, 0x1c
mov edi, ebx
and edi, ebx
and edx, edi
sub edi, edx
and ebx, edx
mov edi, ebx
mov ebx, edx
sub edx, edi
jmp 0x4bab0a
mov esi, dword [esi]
and edx, ebx
neg ebx
mov ebx, 0x6fbac15d
add ecx, edi
and ecx, ebx
sub edi, 0x6fbb7c7f
add edi, ebx
sub edx, ebx
sub edx, ebx
jmp 0x4b8487
mov esi, dword [esp + 0xf4]
or ebx, 0x6fbc7556
xor edx, edi
or ecx, ebx
mov ecx, ebx
and ecx, edx
xor ecx, edx
xor edx, 0x6fd14caf
xor ebx, 0x6fd18517
rol edi, 0x18
jmp 0x4b9e8d
cmp eax, dword [esp + 0xb8]
jmp 0x4b9d90
mov dword [esp + 0xec], 0
sub ebx, edx
xor ecx, edx
add edi, edx
and edi, ebx
jmp 0x4b8721
cmp byte [esi], 0
jmp 0x4b8f09
sub dword [esp + 0xf4], 8
mov edi, ebx
or edx, edi
xor ebx, ecx
xor edi, ecx
or edx, 0x7076142c
dec edx
sub ebx, ecx
neg ebx
inc edi
not edi
or edx, ecx
jmp 0x4badf6
add esi, dword [esp + 0xd0]
inc ebx
add edi, ecx
or edi, edx
inc ecx
mov ebx, 0x709c5844
xor ecx, edx
mov edx, ecx
mov edi, 0x709cfc3f
xchg ebx, edi
xor ebx, edx
jmp 0x4bac87
mov esi, dword [esi]
and edi, ecx
and ebx, edi
sub edi, ecx
mov edx, 0x70ae77c0
xor ecx, 0x70aeb625
xor edi, edx
jmp 0x4ba681
add esi, dword [esp + 0xf4]
xchg edx, ecx
xchg ecx, ebx
sub edx, edi
xor ebx, edi
dec edx
xor edi, edx
add ebx, ecx
mov ecx, edx
not edi
jmp 0x4ba329
mov dword [esp + 0xec], eax
xor edx, ecx
or ebx, edi
xor ebx, edx
xchg ebx, edx
xchg edi, ecx
and edx, edi
add ecx, ebx
jmp 0x4b838d
mov dword [esp + 0x104], 0
sub edi, ebx
and ebx, edx
xor edx, ebx
xor ecx, edi
add edi, 0x71121e20
jmp 0x4b8d73
mov esi, dword fs:[esi]
xor edx, ecx
xor ebx, edx
or ebx, edi
add edi, 0x7120abae
xchg ebx, edi
xchg ecx, edx
mov edx, 0x71215260
not edx
inc edx
shr ebx, 0x1b
mov edx, 0x71270867
sub ebx, ecx
and ebx, 0x7127a09e
mov ecx, edi
and ebx, ecx
jmp 0x4b9ead
mul esi
mov edi, edx
add ecx, edi
ror ebx, 5
xchg edi, ebx
jmp 0x4b934c
mov esi, dword [esi]
nop
and ecx, ebx
sub ecx, ebx
not edi
shl edi, 0x1b
xchg edi, ecx
add ecx, edx
sub edx, 0x716e5dc9
or edx, ebx
mov edx, edi
jmp 0x4ba100
mov dword [esp + 0xf4], esi
mov edx, ebx
add ecx, edi
xor ecx, edi
sub ecx, edx
not edx
or ebx, edi
jmp 0x4b7608
add esi, 0xc
or ebx, ecx
or ecx, 0x71b06901
shl ecx, 0x15
or edx, ecx
add edx, 0x71b1395e
jmp 0x4b8513
mov dword [esp + 0xd0], 0
rol ecx, 8
mov ecx, 0x71d243a0
add edx, 0x71d27c28
mov edi, 0x71d2cc56
mov ecx, edi
and ecx, edx
or ebx, edi
xchg ecx, ebx
not ebx
sub ebx, 0x71d4f272
not ebx
jmp 0x4b912f
jne 0x4b7f7f
mov edi, ecx
xor edx, ecx
rol ecx, 0x16
xor edi, edx
mov edi, edx
xor edi, edx
and ebx, 0x71f47fb2
add ebx, edx
sub edx, edi
mov ebx, edi
and edx, ebx
jmp 0x4ba7ac
mov eax, 4
and ebx, ecx
xor ecx, edi
sub ebx, 0x71fc5483
or edi, edx
not edx
mov ecx, edi
mov ecx, 0x71fd69f6
neg edi
or ebx, edi
jmp 0x4ba530
mov dword [esp + 0xd0], esi
xchg ebx, edx
sub edi, ecx
rol ebx, 0xb
xchg ecx, edi
dec ecx
add edx, 0x721f0af3
sub ebx, ecx
dec ebx
or ecx, 0x721fe2e8
bswap ebx
nop
rol edi, 1
jmp 0x4ba2d0
mov dword [esp + 0xf4], 0
xor edx, ecx
or ecx, edi
xor ecx, edi
mov ecx, edi
jmp 0x4b7ddf
inc dword [esp + 0xec]
and ecx, 0x7225a1df
xor edx, ecx
add ebx, edx
rol edx, 6
or edx, edi
xchg ebx, ecx
and ecx, edi
xchg edx, edi
xchg edx, edi
jmp 0x4ba338
add dword [esp + 0xf4], 0x20
rol ecx, 0x12
add edx, edi
add edi, edx
sub ecx, ebx
not ecx
mov ecx, ebx
shl edx, 9
and edx, 0x723a8aff
xchg ebx, edx
not edx
mov edx, 0x723b4b9f
add ebx, 0x723b9bf2
ror edi, 7
or edx, 0x723c25a4
jmp 0x4b803a
add esp, 0x12c
rol edi, 8
sub edi, ebx
or edi, ecx
jmp 0x4b972e
mov eax, 2
mov ebx, 0x724c7cb0
and edx, 0x724cb8a4
neg ebx
not edx
mov ebx, edx
or edi, edx
xor edx, ecx
add edx, ebx
inc ecx
dec ebx
sub ebx, edi
rol edx, 5
or edi, 0x724fa3c7
xor ecx, 0x724ff167
shl ebx, 0xa
jmp 0x4ba5d6
add dword [esp + 0xf4], eax
and edi, edx
xchg ecx, ebx
dec edi
inc ecx
add ebx, edi
add ecx, ebx
shr edx, 0xe
mov ecx, edi
dec edx
shl edx, 0xf
add ecx, 0x72533aaf
nop
jmp 0x4b9b7f
mov esi, dword [esi]
mov ecx, 0x727e2395
rol ebx, 0x16
shr edi, 7
mov ebx, 0x727eea5c
xor ecx, 0x727f1fb4
rol edi, 0xa
mov ebx, edx
xor ecx, edi
jmp 0x4ba39f
mov esi, dword [esp + 0xd0]
shr ecx, 9
or edx, ebx
add edx, ebx
rol edi, 0x17
xor ecx, 0x729faf44
shr edi, 9
mov ecx, edi
neg ecx
mov ecx, 0x72a0c2e0
and ecx, edi
jmp 0x4b8645
ret
mov esi, dword [esp + 0x104]
xor ecx, ebx
and edx, 0x72b6c2ec
and edi, ebx
or ebx, edi
jmp 0x4ba1e4
mul esi
xor ebx, ecx
and edx, edi
shr edx, 0x1b
jmp 0x4b86dd
mov esi, dword [esi]
or edx, ecx
neg ebx
xchg ecx, edx
xchg edi, ecx
and ecx, 0x72c24caa
xor ecx, edx
xchg edi, edx
add edi, 0x72c30a6c
and edx, 0x72c35f40
jmp 0x4b9b1e
add dword [esp + 0xf4], esi
sub ecx, edx
add ebx, 0x72dbcc6c
and ecx, 0x72dc04bd
sub edx, 0x72dc3d0b
or ecx, edx
shr edi, 1
add edi, 0x72dd0cab
and edi, ecx
add ebx, edx
add ecx, edx
sub ecx, edi
and edx, 0x72de38ca
jmp 0x4b9217
mov dword [esp + 0xf4], esi
shr edx, 9
mov edx, ebx
rol edx, 0x1c
or edi, ebx
and edx, 0x72fabc20
sub edx, ebx
xor edi, 0x72fb3419
and edi, 0x72fb6c48
jmp 0x4b7915
add esi, dword [esp + 0xd0]
xchg ebx, ecx
neg ebx
or ebx, edi
xchg edx, ebx
mov ebx, edx
bswap ecx
sub ebx, edi
sub edi, ebx
add edx, ecx
add ecx, edi
or edi, edx
and ebx, 0x7301ed9c
mov ecx, ebx
mov ecx, ebx
jmp 0x4b7c9c
mov esi, dword [esp + 0xf4]
shl edi, 0x1d
add ebx, ecx
neg ecx
add edi, ecx
mov edx, 0x73067046
ror edi, 2
rol edx, 0x16
not ebx
xor edx, 0x73075d02
sub ebx, 0x730835a8
jmp 0x4baa42
mov esi, 0x30
xor edx, ebx
xchg ecx, edx
mov ebx, 0x73111ce0
or ebx, 0x7311fabd
ror edx, 0x14
and ebx, 0x73129daf
rol edi, 8
mov edi, ebx
and edi, edx
mov ebx, edx
xchg ecx, ebx
sub ebx, edi
and edx, ebx
jmp 0x4b87bf
jne 0x4b9147
sub edx, ebx
sub edx, ecx
xchg edi, ecx
inc edx
or ebx, edx
xor edi, ebx
mov edi, 0x732ff431
xor edi, edx
mov ebx, edx
sub ecx, edx
shr edi, 0x11
jmp 0x4b7ab1
mov esi, dword [esi]
and edi, ecx
sub edi, edx
or ebx, ecx
sub ecx, edx
or ebx, ecx
xor edi, edx
jmp 0x4b90e1
mov esi, dword [esi]
bswap ecx
xchg ebx, ecx
add edx, ebx
add ecx, edi
or ebx, 0x734e3f59
add ebx, edx
xchg edi, ecx
xor edx, edi
not ebx
ror edx, 0xb
jmp 0x4bb0e2
add esi, 0xc
or edi, 0x734fcbfa
or ecx, edx
xor ecx, edi
ror ecx, 3
dec edx
and edi, 0x7350f409
xchg edi, edx
jmp 0x4ba123
mov dword [esp + 0x104], esi
ror edi, 0xc
sub edx, edi
xor edx, edi
sub ebx, edi
sub edx, edi
ror edi, 3
xor ebx, 0x738f8d97
xor ebx, ecx
xchg ecx, edi
jmp 0x4b9147
add esi, dword [esp + 0xd0]
shl ebx, 5
mov ebx, 0x73930e69
not edx
or edi, edx
and edi, ebx
and ebx, edx
ror edx, 0x18
add ebx, edx
mov ecx, edi
jmp 0x4b7531
mov esi, dword [esi]
and edx, ecx
or ebx, ecx
or edi, edx
ror ecx, 0x12
xor ebx, edx
or ecx, edi
or edx, 0x7396231b
add ebx, edx
shr edi, 0x11
sub edi, 0x7396c5a2
add ecx, edx
bswap ecx
add ecx, edx
and ebx, 0x7397a607
jmp 0x4b8be2
add esi, dword [esp + 0xec]
add ecx, ebx
add ecx, edx
add edx, 0x73a30a3f
add ebx, edx
sub edi, 0x73a38ad1
neg edi
and ebx, 0x73a403bb
xor edx, edi
jmp 0x4b8f69
mov esi, dword [esp + 0xd0]
sub edi, 0x73bb89cc
and edx, edi
or edx, ecx
rol ebx, 9
not edx
dec edx
mov ebx, edx
xor edx, edi
xchg ecx, edx
dec ebx
xchg edi, ecx
jmp 0x4b7507
mov esi, dword [esi]
rol edx, 0x10
add ebx, edi
dec edx
bswap ebx
jmp 0x4b8a1e
add dword [esp + 0x104], 4
shr edx, 9
sub ecx, edx
xchg edx, edi
dec ecx
xchg ebx, edx
and ebx, edi
add edi, ebx
xchg ecx, edi
xor edx, 0x73c78590
or edi, ecx
mov edi, 0x73c7ff2c
not edi
add edx, ecx
sub ecx, edx
jmp 0x4b7657
add esi, 0x18
xor ecx, edx
add edi, ebx
nop
and ebx, edi
dec ecx
neg ecx
xor ebx, edi
and edi, ebx
and ebx, edx
and ebx, edx
jmp 0x4b9e26
movzx esi, word [esi]
sub edx, ebx
xchg edx, ecx
and ecx, 0x73f0af89
ror ebx, 6
rol ebx, 2
jmp 0x4b895b
mov esi, dword [esp + 0xec]
sub ecx, 0x73fdd992
xchg ecx, ebx
add edi, ecx
sub ecx, 0x73fe82d4
and edx, ecx
add edi, 0x73feec7f
mov edx, edi
sub edi, 0x73ff66a4
shr edx, 0xa
or ebx, ecx
inc ecx
sub edi, ebx
xchg edx, ecx
xor ebx, edx
jmp 0x4b97d3
mov esi, dword [esi]
add ecx, 0x740b85ef
mov edx, 0x740be452
and ebx, edx
xor ecx, 0x740c56e9
or edi, 0x740c94e7
ror ebx, 4
xchg edi, edx
or ebx, edx
sub edi, edx
ror edx, 0x10
jmp 0x4b956b
pop esi
ror edi, 6
xor edi, ebx
inc edx
and edx, ecx
or ecx, ebx
and ecx, ebx
xor edi, 0x7421c2ed
shl ebx, 0xd
and edx, ecx
add ebx, 0x74226952
shl ecx, 7
sub ecx, edx
jmp 0x4b80f1
mov esi, dword [esi]
and edx, ebx
neg ebx
add edi, ecx
sub edx, edi
xchg ebx, edi
or ebx, edi
xor edx, ecx
nop
jmp 0x4b9ace
sub esp, 0x12c
mov edx, 0x74400116
xchg edi, edx
nop
or edi, edx
xchg ecx, ebx
sub edi, 0x74414f9c
shr ecx, 0x1c
mov ecx, ebx
jmp 0x4b81d2
mov esi, dword [esp + 0xf4]
or ebx, edx
mov ebx, edi
dec ecx
mov edx, edi
or ebx, 0x74509467
xor edi, edx
jmp 0x4b801a
mov esi, dword [esi]
add ebx, edi
shr ebx, 0xd
xor edx, 0x7453e12b
neg ebx
add ebx, ecx
add edi, edx
add ecx, 0x7454f362
xor ebx, 0x74552892
add edx, 0x74556159
jmp 0x4b7554
rol eax, 8
mov edx, ecx
add edx, 0x746324f8
not ebx
sub edx, 0x74639ae1
add ebx, ecx
and ebx, ecx
xor edi, edx
mov edi, ecx
jmp 0x4babed
inc esi
inc edx
and edi, ebx
xor ebx, edi
sub edi, ebx
jmp 0x4b81ea
mov dword [esp + 0x104], esi
mov edi, ecx
shl edi, 0x10
inc edi
add edi, ecx
mov ecx, edi
shl ebx, 0xf
inc edi
shl ebx, 9
shr edi, 0x13
jmp 0x4b9315
mov esi, dword [esp + 0xf4]
sub edi, edx
neg ebx
inc ebx
sub ecx, ebx
and edx, 0x74a03202
and ecx, edi
xor ecx, 0x74a09cde
rol ebx, 0x1b
or ecx, edx
xor ebx, 0x74a34ea2
jmp 0x4b9802
add esi, dword [esp + 0xd0]
mov edi, ebx
xchg ebx, edx
xchg edi, ebx
add ebx, edx
mov edx, ecx
sub ebx, edi
mov ebx, 0x75123148
add ebx, edx
add edx, ecx
mov edx, 0x7512dc9c
add edx, ebx
or ecx, ebx
jmp 0x4ba0dc