Function at 0xece9c3
Capabilities:
Encode data using xor

Disassembly:
mov ax, 0xe561
pop ebx
jmp 0xece9e0
sti
add ebx, 0xe10b
mov ax, 0x9055
sti
xor edx, edx
and di, 0x9220
push dword [edx + ebx]
push edx
push esi
sbb ax, 0x6fe1
pop edi
pop edi
pop ecx
mov edi, eax
sub ecx, 0x7c84fd9
sub ecx, 0x49a25bb1
jmp 0xecea1d
add ecx, 0x73670e7c
mov si, 0xd86a
push ecx
mov eax, 0x2b392190
pop dword [ebx + edx]
jnp 0xecea39
movzx esi, ax
mov edi, 0xc5300f1
sub edx, 0x18cd1280
mov edi, esi
add edx, 0x18cd127c
mov esi, 0x15289600
add byte [eax], al
rcr byte [edi], 0xff
dec dword [edi]
test dword [edx], edx
add byte [eax], al
add al, bh
sti
jmp 0xecea8d
cmp dword [ebp + 0x122d03bd], 0
je 0xeceaa4
mov dword [ebp + 0x122d2def], 1
mov eax, dword [ebp + 0x122d1699]
mov esi, eax
mov ecx, dword [esi + 0x3c]
add esi, ecx
mov ecx, 0x400000
mov dword [ebp + 0x124b0557], ecx
mov edi, dword [ebp + 0x122d2c57]
test edi, edi
jne 0xeceacf
jmp 0xecec10
mov esi, edi
mov ecx, 0x4c84
lodsb al, byte [esi]
xor al, 0x37
stosb byte es:[edi], al
dec ecx
jne 0xecead6
mov ecx, dword [ebp + 0x122d2c57]
mov edi, dword [ebp + 0x122d1699]
mov esi, dword [ebp + 0x124b0557]
cmp edi, esi
jne 0xeceb00
jmp 0xecec01
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
sub dword [ebp + 0x122d1545], edx
sub edx, 8
add ecx, 8
add eax, edi
pushal
mov ebx, eax
push ebx
push 0x1000
push ebx
call dword [ebp + 0x122d35f2]
pop ebx
test eax, eax
je 0xeceb41
lea eax, [ebp + 0x122d35af]
push eax
push 0x40
push 0x1000
push ebx
call dword [ebp + 0x122d222b]
popal
mov bx, word [ecx]
test bx, 0xf000
je 0xecebe8
and ebx, 0xfff
add ebx, eax
cmp dword [ebp + 0x122d2cb7], 1
jne 0xeceb7e
cmp byte [ebx - 2], 0xe8
jne 0xeceb7e
cmp byte [ebx + 3], 0x90
jne 0xeceb7e
jmp 0xecebe8
cmp byte [ebx - 1], 0xc5
jne 0xecebab
cmp dword [ebp + 0x122d2c3f], 0
je 0xecebab
cmp dword [ebp + 0x122d13b9], 0
je 0xecebab
mov byte [ebx - 1], 0xe9
jmp 0xecebe8
cmp dword [ebp + 0x122d03bd], 0
je 0xecebd8
cmp byte [ebx - 1], 0xc5
jne 0xecebd8
cmp dword [ebp + 0x122d2c3f], 0
je 0xecebd8
mov byte [ebx - 1], 0xe9
jmp 0xecebe8
cmp dword [ebx], 0x90909090
je 0xecebe8
sub dword [ebx], esi
add dword [ebx], edi
add ecx, 2
sub edx, 2
jne 0xeceb42
cmp dword [ebp + 0x122d1545], 0
jne 0xeceb00
mov edi, dword [ebp + 0x122d2c57]
mov ecx, 0x4c84
xor al, al
rep stosb byte es:[edi], al
mov edx, 0x286299f6
mov edi, dword [ebp + 0x122d1519]
mov ecx, 0x79
lea esi, [ebp + 0x12542263]
rep movsb byte es:[edi], byte [esi]
xor edx, 0x28634112
mov edi, dword [ebp + 0x122d1519]
add edi, 0xe
test edx, edx
je 0xecec45
add edx, dword [ebp + 0x122d1699]
mov dword [edi + 1], edx
mov edx, dword [ebp + 0x122d3022]
mov edi, dword [ebp + 0x122d1519]
add edi, 0x54
mov dword [edi + 1], edx
mov edi, dword [ebp + 0x122d1519]
add edi, 0x49
mov dword [edi + 1], ebp
mov edi, dword [ebp + 0x122d1519]
add edi, 0x25
mov dword [edi + 1], ebp
jmp 0xececf0
mov eax, edx
jmp 0xeced00
jmp 0xed0fd6
mov edx, ebx
lea eax, [ebp + 0x12544162]
mov dword [ebp + 0x125295ef], eax
lea ebx, [ebp + 0x122d2ddb]
mov eax, 0x1528
mov dword [ebp + 0x1254203b], eax
call 0xed0ffa
pop eax
add eax, 0xb
mov dword [ebx], eax
jmp 0xed252d
push edx
jmp 0xed268c
push edx
mov dword [esp], 0x256ba1c
mov dword [esp], eax
mov dword [esp], 0x757ddfbd
mov dword [esp], ecx
mov dword [esp], ebp
push ebp
mov dword [esp], esp
add dword [esp], 4
pop ebp
jmp 0xed25aa
push edx
mov edx, 4
add ecx, edx
pop edx
xchg dword [esp], ecx
mov esp, dword [esp]
jmp 0xed2587
push ebx
mov ebx, 0x3dff1724
jmp 0xed2605
and ebx, 0x25aeaa55
push ecx
jmp 0xed25c3
mov eax, 0x5f1f8c6a
jmp 0xed2643
push ecx
mov ecx, esp
add ecx, 4
jmp 0xed255c
add esp, 4
jmp 0xed2637
push edi
mov edi, 4
jmp 0xed2570
inc ebx
add ebx, 1
neg ebx
jmp 0xed257b
mov ecx, 0x377f4026
jmp 0xed25cd
xor ecx, 0x8aeab1ed
sub ebx, ecx
pop ecx
sub ebp, 0x559dfc14
sub ebp, ebx
add ebp, 0x559dfc14
mov ebx, dword [esp]
add esp, 4
pop edi
sub ebp, 4
push ebp
push dword [esp + 4]
mov ebp, dword [esp]
add esp, 4
pop dword [esp]
pop esp
jmp 0xed2621
xor ebx, 0x7fe7b6b0
add ebx, 0x55d96f6
add ebp, ebx
pop ebx
add ebp, edi
push ebx
mov ebx, 0x68a3d101
jmp 0xed25b5
mov dword [esp], edi
mov dword [esp], eax
jmp 0xed26b2
add esp, 4
jmp 0xed2533
push ecx
jmp 0xed264e
pop ebp
jmp 0xed259f
xor eax, ebp
push dword [esp]
pop ebp
jmp 0xed262c
push ebx
mov ebx, 0x7ff7e521
or ebx, 0x7c7f4cf7
neg ebx
dec ebx
xor ebx, 0xb8df5bfb
mov ecx, ebx
pop ebx
add ecx, 0xffffffff
sub ecx, 0x75feaa5f
push ecx
not dword [esp]
pop ecx
shr ecx, 7
push edx
mov edx, 0x7d0594df
xor ecx, edx
pop edx
sub ebp, ecx
pop ecx
push dword [esp]
pop edx
jmp 0xed2591
mov dword [esp], 0x5204925a
mov dword [esp], ebp
push edx
push 0x5f1fe5d5
pop edx
push edx
jmp 0xed26a3
add dword [esp], 0x7d7faa1f
push dword [esp]
jmp 0xed263d
call 0xed26b7
push dword [esp]
push dword [esp]
mov eax, dword [esp]
add esp, 4
add esp, 4
sub esp, 4
mov dword [esp], edx
mov dword [esp], 0x329a541b
jmp 0xed2ba9
pop ecx
add edi, 0x7f5fd2c1
jmp 0xed3195
push ebp
mov ebp, 1
add ecx, ebp
jmp 0xed273b
pop ebp
shr ecx, 3
or ecx, 0x637de87c
xor ecx, 0x58ca1c6f
push ecx
sub dword [esp], 0x7f1a2ffb
pop edx
jmp 0xed276c
xor dword [esp], edi
xor edi, dword [esp]
mov esp, dword [esp]
push 0x1f1be936
jmp 0xed31be
add edx, 0x7f1a2ffb
pop ecx
jmp 0xed27d2
add esp, 4
jmp 0xed2a51
not edi
jmp 0xed32dc
mov ecx, 0x56ffb47a
push esi
mov dword [esp], eax
mov eax, 0x53bb8bf3
mov esi, 0x4bd472d3
xor esi, eax
mov eax, dword [esp]
jmp 0xed319c
add dword [esp + 4], ebp
add dword [esp + 4], 0x76db5941
jmp 0xed2e63
sub edx, 0x7bfd9d23
xchg edx, ebp
push ebp
not dword [esp]
pop ebp
xor edx, ebp
jmp 0xed291c
xor edx, ebp
shl edx, 3
jmp 0xed2a62
mov ebp, dword [esp]
add esp, 4
pop dword [esp]
pop esp
jmp 0xed2c89
xor edi, ebp
pop ebp
shr edi, 8
push eax
mov eax, 0x18bed8f2
shr eax, 1
or eax, 0x77ffd1a8
neg eax
jmp 0xed2bdf
add ebp, 0x73f780ab
add ebp, 0xd3ed117e
xor edx, ebp
mov ebp, dword [esp]
add esp, 4
add edx, 0x21c272d4
add eax, 0x7f7d935c
add eax, edx
sub eax, 0x7f7d935c
pop edx
push edi
jmp 0xed2975
mov edi, esp
add edi, 4
jmp 0xed29c3
push esp
mov ebx, dword [esp]
add esp, 4
jmp 0xed2a81
add ebx, 4
add ebx, 4
xchg dword [esp], ebx
jmp 0xed2b7e
xor ebp, edx
jmp 0xed27fc
push ebp
mov ebp, 0x73eba9ca
mov edi, 0xf3e798ea
sub edi, ebp
pop ebp
add edi, 1
neg edi
add edi, 0x436aab85
shl edi, 8
jmp 0xed2a35
pop esi
xchg dword [esp], ebx
pop esp
mov dword [esp], edx
mov edx, esp
push 0x4a7c45eb
jmp 0xed2fd2
add edi, 4
xchg dword [esp], edi
pop esp
push ebx
push edx
push esi
mov esi, 0x6f9f1881
jmp 0xed2cfa
pop ebx
jmp 0xed28c9
pop esi
xor edi, ebx
jmp 0xed3134
sub ebx, esi
jmp 0xed2996
pop dword [eax + ecx]
push esi
mov dword [esp], ebx
sub esp, 4
jmp 0xed3046
and edi, 0x6efb9000
sub edi, 0x6eb7fffc
add eax, edi
mov edi, dword [esp]
add esp, 4
xor eax, dword [esp]
jmp 0xed2a9a
sub esp, 4
mov dword [esp], ecx
jmp 0xed2e8a
shr edx, 5
push ebx
mov ebx, 0xfc3afb0d
sub edx, 0x7fffa682
add edx, ebx
add edx, 0x7fffa682
pop ebx
add eax, edx
jmp 0xed2b08
add ebx, 4
sub esp, 4
mov dword [esp], esi
mov esi, 4
jmp 0xed2a10
xor dword [esp], eax
jmp 0xed2ed9
xor eax, dword [esp]
jmp 0xed2e38
pop esp
jmp 0xed2778
mov edx, dword [esp]
push edx
mov edx, esp
add edx, 4
add edx, 4
xchg dword [esp], edx
pop esp
add eax, 0x66fea403
push edx
mov edx, 0x7bff70f4
inc edx
neg edx
shr edx, 3
sub edx, 0xd08e6e7a
add eax, edx
pop edx
add eax, dword [esp]
sub eax, 0x3ff1a367
push ebx
mov ebx, 0x66fea403
sub eax, ebx
pop ebx
sub eax, 0x36c6950
push eax
push esp
pop eax
push ecx
jmp 0xed2c15
mov edi, ebx
pop ebx
sub esi, edi
pop edi
add ecx, 0x5f3ef353
add ecx, 0x3ed73763
sub ecx, esi
sub esp, 4
mov dword [esp], edi
mov edi, 0x3ed73763
jmp 0xed3311
pop esp
push edx
mov edx, 0x5f7fc500
jmp 0xed2dc4
pop dword [esp]
mov esp, dword [esp]
jmp 0xed2f1d
mov dword [esp], edi
mov edi, esp
add edi, 4
jmp 0xed3270
push dword [esp]
pop ebx
add esp, 4
push eax
jmp 0xed32c7
dec esi
and esi, 0x7f7b74f7
xor esi, 0x6dd0658a
push edi
push ebx
mov ebx, 0x7491516b
jmp 0xed2b57
not eax
dec eax
add eax, 0x7f8ae18e
add edi, eax
pop eax
add edx, edi
jmp 0xed304e
sub esp, 4
mov dword [esp], edx
mov dword [esp], 0x77ffe050
push dword [esp]
pop ecx
push ebp
mov dword [esp], 0x3913bd5c
mov dword [esp], edi
jmp 0xed2883
sub ecx, edi
jmp 0xed2c92
shl ecx, 6
xor ecx, 0x7fdabdd1
add ebx, ecx
pop ecx
sub edx, ebx
pop ebx
xchg dword [esp], edx
mov esp, dword [esp]
mov dword [esp], edi
jmp 0xed2a17
mov dword [esp], ebx
push edi
jmp 0xed2cc5
sub ecx, 0x3e3e8561
push eax
mov eax, 0x3e6fe6b9
sub eax, 0xeec15fa
inc eax
or eax, 0x5ffc6407
jmp 0xed271c
mov dword [esp], 0x5dfff850
neg dword [esp]
add dword [esp], 1
add dword [esp], 0xddffa7b5
push ebp
mov ebp, 0xfd7f8711
sub dword [esp + 4], 0x76db5941
jmp 0xed27c1
add esi, 0x7efec6d0
xor esi, 0x7abf1fd0
jmp 0xed2dd5
xor edi, ebx
push dword [esp]
mov ebx, dword [esp]
add esp, 4
push 0x443cefaa
mov dword [esp], edx
mov edx, esp
push esi
mov esi, 0x5fff41ba
shl esi, 5
not esi
add esi, 0x6beb2150
sub esi, 0x6c02ea0b
add edx, esi
pop esi
add edx, 4
push edx
push dword [esp + 4]
push dword [esp]
mov edx, dword [esp]
add esp, 4
push ebx
jmp 0xed2ebd
dec edx
neg edx
push ebp
jmp 0xed3124
dec esi
xor esi, 0xcbdf690a
mov edx, esi
pop esi
xchg edx, edi
not edi
xchg edx, edi
shl edx, 6
add edx, 0x776a430c
mov ebx, edx
pop edx
sub ecx, 0x35f35b15
sub ecx, ebx
jmp 0xed2e52
mov dword [esp], ebx
push ebp
mov ebp, 0x1abe10c6
push edi
mov edi, 0x82960bb8
mov ebx, edi
pop edi
sub ebx, ebp
pop ebp
or ebx, 0x7b077e91
push ecx
mov ecx, 0x7bffcaf3
jmp 0xed2c6c
mov eax, esp
add eax, 4
add eax, 4
xchg dword [esp], eax
jmp 0xed2ae4
xor dword [esp], eax
xor eax, dword [esp]
mov esp, dword [esp]
xor ecx, ecx
push dword [eax + ecx]
push dword [esp]
push dword [esp]
pop edi
jmp 0xed2f90
add ecx, 0x35f35b15
pop ebx
add eax, ecx
mov ecx, dword [esp]
jmp 0xed2f3c
pop ebp
push dword [esp]
pop ebx
add esp, 4
push esi
mov esi, 0x7cff3285
sub esi, 0xbfb2803d
add ebx, esi
jmp 0xed29e8
mov ecx, esp
add ecx, 4
sub ecx, 4
xchg dword [esp], ecx
jmp 0xed2f02
mov dword [esp], edx
mov edx, esp
add edx, 4
add edx, 4
xchg dword [esp], edx
mov esp, dword [esp]
jmp 0xed2b8a
xor eax, dword [esp]
pop esp
push ebp
mov ebp, esp
add ebp, 4
sub ebp, 4
jmp 0xed31b4
pop esp
mov dword [esp], ebx
push 0x62cac198
pop ebx
push ecx
mov dword [esp], 0x383ba04c
mov dword [esp], esi
push ecx
jmp 0xed27a4
sub esp, 4
mov dword [esp], ebx
jmp 0xed289f
mov dword [esp], edx
push ebp
mov dword [esp], ecx
mov ecx, 0x7b4f0541
jmp 0xed3336
add esp, 4
push edi
mov edi, 4
add eax, edi
pop edi
jmp 0xed2aa2
add esp, 4
push eax
sub esp, 4
mov dword [esp], esp
jmp 0xed301a
mov dword [esp], edi
mov edi, 0x2bbd3fe4
push ebp
mov ebp, 0x73f94288
shl ebp, 1
shr ebp, 1
neg ebp
add ebp, 0x5ddd9451
sub ebp, 0x8b4711c2
jmp 0xed2818
add dword [esp], 4
mov eax, dword [esp]
jmp 0xed310e
mov dword [esp], edx
jmp 0xed305a
mov edi, dword [esp]
add esp, 4
push esi
jmp 0xed2dfe
push 1
pop edx
mov ebx, edx
mov edx, dword [esp]
add esp, 4
push edi
mov edi, 0x794775cd
add ecx, 0x7f6f4793
add ecx, edi
sub ecx, 0x7f6f4793
jmp 0xed30d7
push dword [esp]
pop edi
add esp, 4
jmp 0xed3229
neg esi
neg esi
sub esi, 0x9f5c7d62
add ebp, esi
pop esi
sub esi, ebp
pop ebp
add esi, ecx
add esi, 0x579f7146
jmp 0xed26e9
push ebx
push esp
jmp 0xed29e2
push dword [esp]
pop ebx
add esp, 4
jmp 0xed2d2e
mov ebp, 0x77dd6d5c
and ebp, 0x3ef926a8
jmp 0xed2853
push dword [esp]
push dword [esp]
pop ebx
push eax
jmp 0xed2e24
sub edi, esi
jmp 0xed3214
add esp, 4
push ebp
mov ebp, 0x77b265c0
or ebp, 0x75ebd173
push esi
jmp 0xed31c6
push ebp
push dword [esp + 4]
jmp 0xed2806
mov dword [esp], eax
jmp 0xed2f2b
mov esi, 0x3ebf6834
or esi, 0x6efeb0b5
jmp 0xed30e3
sub edi, 0x7f5fd2c1
push dword [esp]
pop esi
add esp, 4
jmp 0xed329c
sub ecx, 0x1fff45e3
sub ecx, ebx
push ebp
mov ebp, 0x1fff45e3
add ecx, ebp
pop ebp
sub esp, 4
mov dword [esp], eax
mov eax, 0x794775cd
add ecx, 0x3dc3a400
sub ecx, 0x7d3d9c15
sub ecx, eax
add ecx, 0x7d3d9c15
jmp 0xed3261
push eax
mov eax, 0x3dc3a400
sub ecx, eax
pop eax
pop eax
jmp 0xed2bb9
sub esp, 4
mov dword [esp], ecx
push edi
mov edi, 4
push edi
mov ecx, dword [esp]
add esp, 4
mov edi, dword [esp]
add esp, 4
add edi, 0x5bb77a8f
add edi, ecx
sub edi, 0x5bb77a8f
jmp 0xed32f6
sub edi, 0x5cfb0bb7
add edi, ebx
add edi, 0x5cfb0bb7
jmp 0xed32af
add edi, 0x6f6fad9a
pop ebx
push esi
mov dword [esp], ebx
push edx
mov dword [esp], 0x13070a82
jmp 0xed3115
mov dword [esp], 0x792e3834
mov dword [esp], esi
push edi
mov edi, 0x6f471c37
jmp 0xed279d
add edi, 0x9df659ce
mov esi, edi
pop edi
xor esi, 0x37ea0270
sub esi, 0xffffffff
jmp 0xed2bc6
mov ecx, dword [esp]
push ecx
mov ecx, esp
add ecx, 4
add ecx, 4
xchg dword [esp], ecx
pop esp
xor edi, dword [esp]
jmp 0xed2759
push ebp
push 0x7579de11
pop ebp
sub ecx, ebp
pop ebp
sub ecx, 0x3fff4c8d
add ecx, 0x3e3e8561
jmp 0xed2c65
shr ecx, 1
jmp 0xed272e