Function at 0x61a8ae
Capabilities:
Encode data using xor

Disassembly:
add esp, 4
mov eax, ecx
jmp 0x61a7d5
mov edx, esp
add edx, 4
add edx, 4
xchg dword [esp], edx
pop esp
mov ebx, dword [esp]
jmp 0x61a0ec
push ecx
mov ecx, 0x53ff602a
jmp 0x61a454
pop edx
add esp, 4
shl edx, 4
inc edx
xor edx, 0x67ffd3c0
xor edx, 0xeff23059
push eax
mov eax, edx
mov ebx, eax
pop eax
pop edx
push edx
push ebx
pop edx
mov ecx, edx
pop edx
pop ebx
jmp 0x61a80f
mov esi, 0x7fec8921
neg esi
dec esi
push edi
mov edi, 0xffffffff
jmp 0x61a3a2
push dword [esp]
pop ecx
push edx
jmp 0x61a15f
not ecx
inc ecx
jmp 0x61aadd
push edi
push ebx
jmp 0x61a3fa
shr dword [esp], 5
push eax
jmp 0x61a8e7
xchg dword [esp], edx
jmp 0x61a4ab
neg edi
sub edi, 0x1abe6cdf
push ecx
mov ecx, 0x5fed60d9
and edi, ecx
pop ecx
push ecx
mov ecx, 0x31a336e6
add edi, ecx
pop ecx
sub esi, 0x7c8f748e
add esi, edi
add esi, 0x7c8f748e
pop edi
push eax
mov dword [esp], 0x47125742
mov dword [esp], edx
push ecx
push 0x5bffc87b
pop ecx
and ecx, 0x2fbf3e30
jmp 0x61a513
add esi, 0x7f7b3a5a
sub esi, edi
sub esi, 0x7f7b3a5a
pop edi
dec esi
sub esi, 0x63aba335
jmp 0x61a4ce
mov ebx, 0x5fff8ad0
jmp 0x61a58e
pop dword [ecx + edi]
push ecx
push ebx
mov ebx, 0x5e6b31eb
jmp 0x61aa9d
add edi, 0x256158b9
add edi, ecx
sub edi, 0x256158b9
pop ecx
sub edi, 0x75ee7356
sub edi, 0x63ff8f00
jmp 0x61a81a
pop esp
sub esp, 4
mov dword [esp], esi
jmp 0x61a22a
xor esi, ebx
xor ebx, esi
xor esi, ebx
not ebx
xor esi, ebx
xor ebx, esi
xor esi, ebx
shl esi, 5
xor esi, 0x7bb52d41
and esi, 0x4f3729f2
push edi
mov edi, 0x7f6e1f00
sub edi, 0x5dee6ce3
shl edi, 4
jmp 0x61a35c
xor ecx, 0x69605cf0
mov edx, ecx
pop ecx
add esi, 0x1fffb200
sub esi, edx
sub esi, 0x1fffb200
pop edx
jmp 0x61a778
add ebx, 0xf3ffd55a
mov edi, ebx
jmp 0x61a5a3
pop ebx
push edi
push ecx
mov ecx, 0x7d2fec84
add dword [esp + 4], ecx
pop ecx
pop eax
sub eax, 0x7d2fec84
pop edi
sub edi, eax
pop eax
push dword [esp]
pop ecx
add esp, 4
cmp edi, 0xffff92c8
jne 0x61a637
sti
jmp 0x61a999
add ebp, ebx
pop ebx
push edi
mov edi, 0x7fcb30a7
jmp 0x61a8a3
mov ecx, esi
push dword [esp]
pop esi
add esp, 4
sub esp, 4
mov dword [esp], ecx
jmp 0x61a78f
push ebp
mov dword [esp], eax
jmp 0x61a9ec
and ebx, 0x7f75f34e
inc ebx
neg ebx
jmp 0x61aa5e
mov ecx, dword [esp]
push ecx
jmp 0x61a85f
sub edx, 0x7fff701b
jmp 0x61a92e
push 0x5a64a978
pop ebx
jmp 0x61a850
sub edi, ecx
add edi, 0x63ff8f00
push 0x616bdda7
mov dword [esp], edx
push ebx
mov ebx, 0x75ee7356
mov edx, ebx
pop ebx
sub edi, 0x5ff63ab4
add edi, edx
add edi, 0x5ff63ab4
pop edx
sub esp, 4
mov dword [esp], eax
jmp 0x61a2d2
xor ebx, ecx
jmp 0x61aac8
mov dword [esp], ebx
mov ebx, esp
add ebx, 4
add ebx, 4
push ebx
push dword [esp + 4]
pop ebx
pop dword [esp]
mov esp, dword [esp]
jmp 0x61ab28
add edi, 0x7fffc930
jmp 0x61a918
push ebp
mov ebp, esp
push ebp
mov dword [esp], ebx
mov ebx, 0x5cb7a0a3
neg ebx
xor ebx, 0xa3485f59
jmp 0x61a749
mov eax, 0x3f776141
jmp 0x61aa55
dec edi
push edx
mov edx, 0x7e796b32
inc edx
shr edx, 8
sub edx, 0x7ebb63d9
jmp 0x61a804
neg edx
sub edx, 0xfe7160b7
xor edi, edx
pop edx
sub ebp, 0x7b7f4b5a
add ebp, edi
add ebp, 0x7b7f4b5a
pop edi
sub esp, 4
mov dword [esp], ebp
jmp 0x61a990
push dword [esp + 4]
jmp 0x61a9ac
push esi
jmp 0x61a9a5
mov esi, esp
jmp 0x61aab1
pop ebp
jmp 0x61a9bc
pop dword [esp]
mov esp, dword [esp]
push eax
mov eax, 0xf8a35c49
xor edi, eax
pop eax
add ebx, edi
pop edi
push ebp
mov dword [esp], edi
mov dword [esp], 0x71e83aa6
push eax
mov eax, 0x6df5859c
sub dword [esp + 4], 0x69fffd9a
jmp 0x61aa2b
mov dword [esp], 0x366f2971
or dword [esp], 0x3fff08aa
shl dword [esp], 7
push eax
mov eax, 0x3feba0da
or dword [esp + 4], eax
mov eax, dword [esp]
add esp, 4
xchg dword [esp], edx
not edx
xchg dword [esp], edx
add dword [esp], 0x37c848d2
mov dword [esp], ebx
mov ebx, 0x4a79ec10
push ebx
jmp 0x61a2c0
add dword [esp + 4], eax
add dword [esp + 4], 0x69fffd9a
pop eax
push edi
mov edi, 0x77a1e39d
add dword [esp + 4], edi
pop edi
dec dword [esp]
xchg dword [esp], edx
xchg edx, eax
not eax
xchg edx, eax
xchg dword [esp], edx
jmp 0x61a34a
or dword [esp + 4], eax
jmp 0x61aa69
sub ebx, 0x422f81a6
jmp 0x61aaa3
pop eax
jmp 0x61aa6f
shr dword [esp], 5
xchg dword [esp], esi
push esi
push eax
pop esi
pop eax
not eax
xchg esi, eax
jmp 0x61aa82
xor dword [esp], esi
xor esi, dword [esp]
xor dword [esp], esi
sub dword [esp], 0x98e5c312
mov dword [esp], edx
mov dword [esp], ebx
jmp 0x61a426
dec ebx
jmp 0x61a7ac
mov ecx, ebx
pop ebx
sub ecx, 0x5ebe93e5
jmp 0x61a2ca
add esi, 4
sub esi, 4
xchg dword [esp], esi
mov esp, dword [esp]
mov dword [esp], eax
jmp 0x61aae8
push dword [esp]
pop ecx
push edx
mov edx, esp
add edx, 4
add edx, 4
jmp 0x61a354
xor ecx, 0xff4f46d2
jmp 0x61a18c
mov dword [esp], ecx
push ebx
push 0x7ed7da6
mov dword [esp], ebx
mov ebx, esp
push ebp
mov ebp, 4
add ebx, ebp
pop ebp
jmp 0x61ab04
sub ebx, 4
xchg dword [esp], ebx
jmp 0x61ab12
pop esp
mov dword [esp], edx
push 0x6b7f2dac
jmp 0x61ab20
push dword [esp]
jmp 0x61a1d7
jmp 0x61abc8
add al, 0x57
and bh, byte [ebp + 0x7b]
rol byte [edi + 0x504b734f], 1
sbb eax, 0x756eed53
jle 0x61abab
dec edi
sub byte [ecx + 0x53], bh
push eax
dec eax
sar dword [ebx + edi*2 + 0x44], cl
cli
salc
loop 0x61ac36
jo 0x61ac3f
movsb byte es:[edi], byte [esi]
adc esi, 0xffffff97
sub byte [ecx - 0x28], ch
jbe 0x61ab9f
loope 0x61ac15
dec ebx
loopne 0x61ab8a
push ebx
xchg ebx, eax
sti
lahf
js 0x61ab86
invalid
aaa
sub byte [ebx + 0x4b], dh
push eax
sbb eax, 0x9cfb1e3a
jle 0x61ac8f
outsb dx, byte [esi]
clc
daa
test al, 0x37
sub bl, dl
dec ebp
jle 0x61ac6f
cli
pinsrw mm1, esi, 0xb1
sbb eax, 0x73b63bb1
mov al, 0x1c
shr byte [esi + 0x7e], 1
inc esp
sbb al, 0xd0
outsb dx, byte [esi]
jle 0x61ac7f
cli
push ds
out dx, eax
dec edi
cli
lahf
js 0x61ac7c
invalid
cli
sbb dword gs:[edx + 0x3d87b678], 0x735f0cfd
movsb byte es:[edi], byte [esi]
lcall 0xcfd, 0x3d87b678
pop edi
jae 0x61ac20
sahf
js 0x61acc3
cmp al, 0x88
push 0xffffffffffffffc1
xor dword [esi - 0x6005b443], 0x9c964833
aas
sub ch, bh
std
arpl word [eax + 0x73], dx
rcr byte [edi - 0x2697bb88], 1
scasd eax, dword es:[edi]
inc esp
cli
lahf
jnp 0x61ac3d
popal
add ch, al
dec edi
cli
lahf
js 0x61ac72
xor al, 0xb2
lcall 0xfa44, 0x3bb67a47
lahf
dec ebx
add byte [edi + 0x71283860], dl
jae 0x61ad0a
jae 0x61aced
pushfd
js 0x61ad03
pop edx
push cs
ret
pop ds
cld
adc cl, byte [ebx + 0x7afb55d8]
xor byte [edx + 0x7e37c778], ah
jp 0x61ad46
cmpsb byte [esi], byte es:[edi]
sahf
js 0x61ad1b
jno 0x61ad14
push eax
jae 0x61ad54
pushfd
js 0x61ad23
arpl si, bx
fisttp qword [eax - 0x48]
push ds
mov ds, word [ebx]
mov cl, bl
outsb dx, byte [esi]
cmp ebp, ebx
mov dh, 0xe
push cs
dec ebx
cli
lahf
push ebx
js 0x61aca2
js 0x61aca2
lodsd eax, dword [esi]
mov gs, word [edx]
call [0x5873c6cd]
sal esi, cl
jae 0x61acf3
dec edi
xchg esi, eax
fist dword [eax + 0x45]
jle 0x61ad27
dec eax
sub ah, dh
fistp qword [eax + 0x504b77e6]
adc dl, byte [eax + 0x3d1e651a]
test ah, ch
cld
sbb ah, byte [ebp + 0x1e]
cmp eax, 0x9afcec84
sahf
or al, 0x28
idiv ch
insb byte es:[edi], dx
lcall 0x6cfd, 0xf6280c9e
xor dword [edi], 0xefc0d8cc
aaa
int3
out dx, eax
sti
dec edi
dec eax
popal
mov dh, 0x2a
dec ebx
cli
lahf
jnp 0x61ad4b
xchg edi, eax
push ebx
ror word [esi - 0x252c938d], 1
push edx
mov al, 0x44
cli
lahf
scasd eax, dword es:[edi]
dec eax
cli
lahf
js 0x61adba
jae 0x61ad73
sub ebx, dword [edi - 0x2796bb88]
loop 0x61acf4
lahf
js 0x61ad8f
imul ebx, eax, 0x5d09a5e2
wait
movsd dword es:[edi], dword [esi]
or dword [ebp - 0x65], ebx
pop si
push ds
mov byte [0x7db078aa], al
fst qword [0x7d1e7dfb]
ret 0x708a
rcl dword [ecx + edi*2 + 0x44], cl
cli
pushal
cmp byte [eax], ch
shr dword [esi + 0x79], cl
inc esp
outsb dx, byte [esi]
jns 0x61adc3
cli
enter 0x28a7, 0x7b
xchg ebx, eax
scasd eax, dword es:[edi]
inc esp
cli
lahf
std
xchg edi, esi
shr bh, 1
dec edi
ror dword [ebx], cl
jp 0x61add7
cli
xchg esp, eax
scasd eax, dword es:[edi]
sub bl, bl
xor eax, 0x536ff5a4
push eax
mov esp, 0xefde44b9
add dword [edi - 0x60048cc5], ecx
js 0x61adef
add eax, 0x9275468f
lcall 0x5b91, 0x4c4e3738
xchg ecx, eax
pop ebx
retf
sal dword [eax], cl
push es
xchg ebx, eax
dec ebx
cli
lahf
js 0x61ad4e
rcl dword [ebp + 0x6c]
mov esp, 0xf8f9b497
out dx, eax
xchg ecx, eax
arpl bx, cx
or bh, dl
push edi
xor esi, esi
outsb dx, byte [esi]
in eax, dx
jb 0x61ae3d
lahf
lahf
js 0x61ae1f
jne 0x61ae30
push eax
loopne 0x61ae57
xchg edx, eax
scasd eax, dword es:[edi]
inc esp
cli
lahf
xchg ebx, eax
sbb ebp, edi
pushfd
js 0x61adb5
xlatb
jb 0x61ad7c
jl 0x61ad77
xchg dword [esi], ebx
push ds
mov ecx, dword [edi - 0x36]
pushal
pushal
dec ebx
sub eax, 0xf9f79306
pushfd
js 0x61ae43
div dword [ebx - 3]
outsd dx, dword [esi]
not esi
inc edi
sub byte [ebp - 0x24], ah
popfd
cli
cmp al, 0xfa
push 0x7641d1cb
jge 0x61ae70
movsb byte es:[edi], byte [esi]
fmul dword [edx + 0x64819e0a]
js 0x61adc1
or esp, dword [ecx + 0x4732968a]
pop edx
mov dl, byte [esi + 0x1e5a4732]
xor al, byte [edi + 0x5a]
push ds
jo 0x61ae4f
div bh
jne 0x61ae92
les esi, [esi - 0x6005b432]
lahf
jns 0x61ae72
xchg esi, eax
stc
xchg edx, eax
push eax
cli
lahf
js 0x61ae06
push ebx
jl 0x61ae83
cli
mov dh, 0x4c
inc esp
cli
lahf
pop edi
sbb esp, dword [edi - 0x34]
scasd eax, dword es:[edi]
sub byte [eax - 0x27], ch
scasd eax, dword es:[edi]
inc esp
cli
lahf
xchg ebx, eax
pushal
std
pushfd
js 0x61ae27
cmpsb byte [esi], byte es:[edi]
jae 0x61ae55
xchg edi, esi
lahf
js 0x61aea3
salc
cmpsd dword [esi], dword es:[edi]
sub byte [ebx + 0x63], dh
push eax
rcl esp, cl
mov dh, 0x55
inc esi
cli
pushfd
xor bl, byte [eax - 0x6a]
enter 0x289f, 0xffffffffffffffd3
sub bl, dl
add eax, 0x9cfa447c
aas
sub byte [ecx + 0x4b], dh
push eax
retf
cli
add byte [ebx + 0x789ffa4b], dl
rol esi, cl
jae 0x61ae21
dec ebx
cli
lahf
js 0x61aeab
sbb byte [ebp + 0x1e], bl
pop ebp
push ds
dec edi
cli
lahf
js 0x61af0e
sti
lahf
js 0x61aee3
push 0xfa44afd9
cli
lahf
jnp 0x61ae45
popal
pushal
inc eax
sub bl, cl
arpl word [eax + 0x39], dx
invalid
retf
iretd
inc esp
cli
push ds
invalid