Function at 0x427364
Capabilities:
Encode data using xor

Disassembly:
cmp byte [esi + 0x39], cl
push ecx
dec ecx
xchg bh, al
pop es
test dh, ah
arpl sp, bx
add eax, dword [ebx]
out dx, al
or byte [edi + 0x3d], al
cmp eax, 0xc684374d
mov edx, 0x5e030439
push ebx
push ebp
xchg bh, al
pop es
test bl, dh
movsd dword es:[edi], dword [esi]
jno 0x42735e
add ebx, dword [ebx - 0x37]
mov byte [ebx], ah
test dword [edx], 0x88c95502
leave
mov byte [edi + esi*8], ah
leave
mov byte [edi + esi*8], ah
add al, byte [edx]
ja 0x427335
mov byte [0x6f0202f7], ah
leave
mov byte [esi], ah
test dword [edx], 0x88c94c02
daa
test dword [edx], 0x88c97002
sub bh, dh
add al, byte [edx]
leave
mov byte [ecx], ch
test dword [edx], 0x88c96a02
sub edi, esi
add al, byte [edx]
push 0xffffffffffffffc9
mov byte [edx], ch
test dword [edx], 0x88c96802
sub dh, bh
add al, byte [edx]
push 0xf72b88c9
sub esi, edi
add al, byte [edx]
inc edi
leave
mov byte [edi + esi*8], ch
sub al, 0xf7
add al, byte [edx]
insb byte es:[edi], dx
leave
mov byte [0x750202f7], ch
leave
mov byte [esi], ch
test dword [edx], 0x88c96802
das
test dword [edx], 0x88c96602
xor bh, dh
add al, byte [edx]
ja 0x427389
mov byte [ecx], dh
test dword [edx], 0x88c97202
xor dh, bh
add al, byte [edx]
jne 0x427397
xor edi, esi
add al, byte [edx]
jb 0x427390
mov byte [edx], dh
test dword [edx], 0x88c97502
mov byte [ebx], dh
test dword [edx], 0x88c97c02
xor al, 0xf7
xor esi, edi
add al, byte [edx]
jl 0x42739e
mov byte [edi + esi*8], dh
add al, byte [edx]
dec eax
leave
mov byte [0x710202f7], dh
leave
mov byte [esi], dh
test dword [edx], 0x88c97702
aaa
test dword [edx], 0x88c97502
cmp bh, dh
add al, byte [edx]
jl 0x4273c1
mov byte [ecx], bh
test dword [edx], 0x88c95702
cmp dh, bh
add al, byte [edx]
jb 0x4273cf
mov byte [ebx], bh
test dword [edx], 0x88c94702
cmp al, 0xf7
add al, byte [edx]
leave
mov byte [0x770202f7], bh
leave
mov byte [esi], bh
test dword [edx], 0x88c96402
aas
test dword [edx], 0x59540302
xchg bh, al
pop es
test ah, dh
aaa
or al, 4
add ebp, ebx
or eax, dword [ebx]
add eax, dword [ebx]
add edx, dword [edx + 0x4f]
dec ebp
inc eax
inc ebp
cmp byte [esi], dh
xchg bh, al
pop es
test ah, dh
xor ecx, edx
add eax, dword [ebx]
pop esp
push esi
test dh, ch
inc esp
or dword [ebx], eax
add ebp, esi
or dword [edx + 0x44], edx
dec ebx
inc ebp
inc esi
dec edx
pop esi
leave
mov byte [ebx], bl
stc
add al, byte [edx]
push ebp
leave
mov byte [ecx + edi*8], bl
add al, byte [edx]
ja 0x427432
mov byte [0x6f0202f9], bl
sbb eax, 0x6f0202f9
leave
mov byte [esi], bl
stc
add al, byte [edx]
dec esp
leave
mov byte [edi], bl
stc
add al, byte [edx]
jo 0x427447
mov byte [eax], ah
stc
and cl, bh
add al, byte [edx]
leave
mov byte [ecx], ah
stc
add al, byte [edx]
push 0xffffffffffffffc9
mov byte [edx], ah
stc
add al, byte [edx]
push 0xf92388c9
add al, byte [edx]
push ebp
leave
mov byte [ecx + edi*8], ah
add al, byte [edx]
jns 0x42746a
mov byte [0x640202f9], ah
leave
mov byte [esi], ah
stc
add al, byte [edx]
push edi
leave
mov byte [edi], ah
stc
add al, byte [edx]
jb 0x42747f
mov byte [eax], ch
stc
add al, byte [edx]
pop ecx
leave
mov byte [ecx], ch
stc
add al, byte [edx]
leave
mov byte [edx], ch
stc
add al, byte [edx]
add ebx, dword [ecx + 0x55]
xchg bh, al
pop es
out dx, al
or dl, byte [ecx + 0x47]
push ebx
cmp eax, 0x84363e3a
stc
and ah, cl
add eax, dword [ebx]
out dx, al
or dl, byte [eax + 0x45]
dec edi
dec eax
dec ebx
cmp al, 0x4c
popal
push esi
test dh, ah
in al, dx
mov byte [ebx], 3
test dh, cl
add eax, 0xee030464
pop es
aas
dec edx
inc edx
dec ecx
pop esi
leave
mov byte [edi], al
stc
add al, byte [edx]
push ebp
leave
mov byte [eax], cl
stc
add al, byte [edx]
ja 0x4274d4
mov byte [ecx], cl
stc
or ecx, edi
add al, byte [edx]
outsd dx, dword [esi]
leave
mov byte [edx], cl
stc
add al, byte [edx]
dec esp
leave
mov byte [ebx], cl
stc
add al, byte [edx]
jo 0x4274e9
mov byte [ecx + edi*8], cl
add al, byte [edx]
leave
mov byte [0x6a0202f9], cl
leave
mov byte [esi], cl
stc
add al, byte [edx]
push 0xf90f88c9
add al, byte [edx]
push ecx
leave
psubw mm0, qword [edx]
add dl, byte [ecx - 0x37]
mov byte [eax], dl
stc
add al, byte [edx]
ja 0x42750c
mov byte [ecx], dl
stc
add al, byte [edx]
dec ebx
leave
mov byte [edx], dl
stc
add al, byte [edx]
push 0xf91388c9
add al, byte [edx]
leave
mov byte [ecx + edi*8], dl
add al, byte [edx]
leave
mov byte [0x680202f9], dl
leave
mov byte [esi], dl
stc
add al, byte [edx]
jne 0x427536
mov byte [edi], dl
stc
add al, byte [edx]
add ecx, dword [esi + 0x2e29f98]
add cl, byte [eax + ebx*4 + 0x202f7fb]
push esi
test dh, al
sbb dword [ebp + 3], ebx
add ebp, esi
or byte [esi], dh
aaa
inc edi
inc esi
inc ebx
test dh, dh
das
push 0xaeb0303
add eax, dword [ebx]
add eax, dword [ebx]
aas
push edx
dec edi
inc edx
dec esi
inc ecx
xchg bh, al
pop es
pop esi
push esp
test ah, al
dec ebx
jg 0x4275ad
add eax, dword [esp + eax*8 + 0x30452ac]
push edx
add al, 3
pop esp
movsb byte es:[di], byte [si]
sbb eax, dword [ebx]
add eax, dword [ebx]
mov word [eax + 0x202e63f], cs
mov ss, word [eax + 0x202e63f]
mov ss, word [ebx + esi - 0x74]
cwde
cmp esp, esi
add al, byte [edx]
mov cs, word [eax + 0x202e63b]
mov word [eax + 0x202eee3], cs
jecxz 0x4275c4
add al, byte [edx]
pop ecx
push ebx
xchg bh, al
pop es
test cl, dl
int1
jl 0x4275e5
add ebp, esi
or dword [ebx + 0x3b], ecx
push eax
dec ebx
cmp esi, dword [esi]
push eax
dec ebp
cmp al, byte [ecx + ebp*8 + 0x303e98b]
popal
push esp
push ebp
xchg bh, al
pop es
test ah, ch
into
add eax, dword [ebx]
test ah, ah
inc edx
hlt