Function at 0x7a5518
Capabilities:
Encode data using xor

Disassembly:
jmp 0x7a5522
pushal
call 0x7a5528
pop ebp
sub ebp, 0x10
sub ebp, 0x3a5518
mov al, byte [esp + 0x28]
cmp al, 1
je 0x7a554c
popal
xor eax, eax
inc eax
ret 0xc
jmp 0x7a5555
mov eax, 0x3a5518
add eax, ebp
add eax, 0x63
mov ecx, 0x5e3
mov edx, 0xbb637ef3
xor byte [eax], dl
inc eax
dec ecx
jne 0x7a556c
test esi, esi
invalid
jmp 0x7a557f
js 0x7a55bf
js 0x7a55fd
iretd
xlatb
wait
inc edi
popal
push esi
push edi
sbb esi, esi
sbb bl, cl
repe cmpsb byte [esi], byte es:[edi]
jle 0x7a5571
xlatb
js 0x7a564c
sti
js 0x7a5642
push ebx
js 0x7a5660
jecxz 0x7a55d7
xor bl, byte [edx]
int1
ret 0x70f1
or al, 0xae
xor edi, edi
js 0x7a567a
xlatb
div ebx
wait
wait
inc edi
jno 0x7a5601
wait
xchg edi, eax
and eax, ebx
invalid
sti
sbb ebx, dword [edi + 0x78f3f3f3]
dec esi
sti
sar byte [edx], 0xc0
and dword [eax + 0x1b], esi
idiv byte [ebx - 0xc428804]
mov ebx, 0xf3bd77fc
ja 0x7a55f4
cld
cld
jnp 0x7a55f8
xchg ebp, eax
js 0x7a5632
out dx, eax
retf 0x873
jae 0x7a564e
sbb edi, esp
ja 0x7a5633
jae 0x7a5657
jae 0x7a5657
or byte [edx], bl
cld
sbb bh, ah
ja 0x7a5635
xchg ebp, eax
jb 0x7a5661
or al, 0xd6
cld
ja 0x7a5644
mov dl, 0x1a
mov dl, 0x1a
mov dl, 0x1a
aas
or al, 0xc
or al, 0xda
mov edi, 0x3270f2ca
div byte [eax + 0x1b]
neg dword [edx]
dec esi
or al, 0xc
or al, 0xda
cmpsd dword [esi], dword es:[edi]
retf 0x70f1
jo 0x7a56ae
cmc
jo 0x7a5698
div dword [eax + 0x1b]
neg byte [edx]
pop eax
or al, 0xc
or al, 0x78
invalid
js 0x7a5620
invalid
inc ecx
jae 0x7a571b
cmc
jb 0x7a56da
jnp 0x7a569f
jb 0x7a56e1
dec eax
dec eax
dec eax
int1
int1
and esp, edi
cld
jbe 0x7a56b1
jns 0x7a56a5
mov ch, 0xe1
and esp, edi
jo 0x7a56f1
or al, 0xc
or al, 0xf1
or al, 0xc
int1
and esp, edi
jbe 0x7a56c4
div bl
jns 0x7a56b8
jns 0x7a56b8
mov ch, 0xe1
and esp, edi
jo 0x7a5672
sal byte [ebx], 0xf1
sal byte [ebx], 0xf1
and esp, edi
cld
jbe 0x7a56d9
jns 0x7a56cd
mov ch, 0xe1
and esp, edi
jo 0x7a56c7
int1
int1
int1
and esp, edi
jbe 0x7a56ec
jns 0x7a56e0
mov ch, 0xe1
and eax, esp
xor esi, ecx
loopne 0x7a5733
int1
and esp, edi
jbe 0x7a56fb
jns 0x7a56ef
mov ch, 0xe1
and eax, esp
xor esi, ecx
loopne 0x7a5742
int1
and esp, edi
jbe 0x7a570a
jns 0x7a56fe
mov ch, 0xe1
and eax, esp
xor esi, ecx
and esp, edi
jbe 0x7a5719
jns 0x7a570d
jns 0x7a570d
mov ch, 0xe1
and eax, esp
xor edi, esp
loope 0x7a574c
loopne 0x7a5760
cld
ja 0x7a5725
cmc
js 0x7a5761
js 0x7a5761
fsubr dword [ebx]
jns 0x7a5729
jnp 0x7a572f
hlt
mov ah, 0x48
int1
sbb al, byte [ebx + 0x4b0c0c0c]
or dword [esp + ecx], 0xc
dec ebx
int1
int1
and esp, edi
jbe 0x7a5746
jns 0x7a573a
mov ch, 0xe1
and eax, esp
xor esi, ecx
and esp, edi
jbe 0x7a5755
jns 0x7a5749
jns 0x7a5749
jns 0x7a5749
mov ch, 0xe1
and esp, edi
jno 0x7a5797
or al, 0xc
or al, 0xd8
xor byte [eax - 0xe], cl
cld
jbe 0x7a573e
dec edx
dec edx
int1
int1
and esp, edi
jbe 0x7a577a
jns 0x7a576e
mov ch, 0xe1
and eax, esp
cmp dh, cl
and esp, edi
jbe 0x7a5789
jns 0x7a577d
in eax, 0xb5
loope 0x7a57bc
mov ch, 0xe1
and esp, edi
cld
jno 0x7a57cb
or al, 0xc
or al, 0xa5
js 0x7a57a8
fadd dword [esi]
add byte [edi - 0x53], dl
lodsd eax, dword [esi]
sbb bh, bl
or al, 0xc
or al, 0xbb
xor dl, byte [ebx]
sti
jns 0x7a57a9
mov ch, 0x78
sbb ecx, dword [edx - 0xe]
int1
dec edx
int1
int1
int1
and esp, edi
jbe 0x7a57b7
jns 0x7a57ab
mov ch, 0xe1
and eax, esp
cmp dh, cl
int1
and esp, edi
jbe 0x7a57c6
jns 0x7a57ba
mov ch, 0xe1
and esp, edi
jno 0x7a5808
or al, 0xc
or al, 0x72
or esi, ebx
invalid
div bl
jb 0x7a581c
or al, 0xc
or al, 0xc
jb 0x7a5803
jae 0x7a57ed
jb 0x7a5820
jb 0x7a5820
jb 0x7a580f
or esi, dword [ebx - 0xd]
jae 0x7a57f9
jb 0x7a582c
jb 0x7a582c
rep movsd dword es:[edi], dword [esi]
js 0x7a5815
fadd dword [ebx]
add byte [edi - 0x53], dl
add eax, dword [eax]
push edi
lodsd eax, dword [esi]
sbb ch, byte [eax + 0xd]
or al, 0xc
jns 0x7a5812
cmc
mov ch, 0xc0
cmp dh, byte [ebx]
sbb esi, edx
cld
xor ebx, dword [ebx]
cld
ja 0x7a580f
jb 0x7a584d
int1
js 0x7a584c
movsd dword es:[edi], dword [esi]
js 0x7a5838
fadd dword [ebx]
add byte [edi - 0x53], dl
lodsd eax, dword [esi]
dec eax
sbb al, byte [eax - 0x51f3f3f3]
fmul dword [esi - 0x53cb8705]
lodsd eax, dword [esi]
js 0x7a5863
push ss
scasb al, byte es:[edi]
xor ebx, edi
js 0x7a5822
xlatb
jle 0x7a57ed
xlatb
idiv dword [eax - 0x39]
xlatb
jle 0x7a57f4
xlatb
neg dword [edx]
div ebx
fldcw word [ebp*4 - 0x5914b421]
fldcw word [ebp*4 - 0x5914b421]
leave
invalid