Function at 0x79d67c
Capabilities:
Encode data using xor

Disassembly:
wait
mov ah, 0x8c
push ss
mov al, byte [0x80f00b11]
call 0xc2af1679
jo 0x79d680
cmpsd dword [esi], dword es:[edi]
add ebp, edx
mov al, 0
add byte [eax], al
add byte [eax - 0x18], ah
pushal
invalid
add byte [eax], al
pushal
call 0x79d682
add byte [eax], al
pop ebp
sub ebp, 6
sub ebp, 0x39d67c
jmp 0x79d6e0
add byte [eax + eax], cl
and eax, 0x4f000000
add byte [eax], al
dec edi
adc byte [si], bh
jl 0x79d663
ja 0x79d6a1
lcall 0x4561, 0x704f9c94
test al, 0xba
scasb al, byte es:[edi]
xchg edx, eax
pop edi
add dword [eax], eax
add byte [eax], al
jb 0x79d72d
sub ah, byte [edx + 0x200f4e81]
fist dword [ebp + 0x6a56d85a]
mov ebx, dword [esi + 0x486ebe51]
fisub word [edx]
mov ebp, 0x77e2a302
mov byte [esi - 0x10], bh
shl dword [edi - 0x17], 1
add al, 0
add byte [eax], al
lea edi, [ecx + 0x7cb8f49c]
salc
cmp dword [eax], eax
jmp 0x79d6e9
mov eax, 0x39d67c
add eax, ebp
add eax, 0x93
mov ecx, 0x624
mov edx, 0x355ad2e3
rcr byte [edx + 0x35], cl
xor byte [eax], dl
inc eax
dec ecx
jne 0x79d700
jmp 0x79d713
mov dword [ebx - 0x1c0c1c75], esp
mov dword [0xe3f3e38b], eax
jecxz 0x79d6fd
jecxz 0x79d6a6
mov esp, ebx
das
jecxz 0x79d74c
iretd
mov bl, 0x1c
jbe 0x79d74c
inc ebx
shl ebx, cl
mov bl, 0x68
push 0xe3e3df6a
push 0xe3e3df6a
invalid
jecxz 0x79d713
jecxz 0x79d714
jecxz 0x79d794
bound esp, qword [edx]
sbb esp, ebx
jecxz 0x79d71a
and bl, byte [ebx]
jecxz 0x79d719
jecxz 0x79d718
loopne 0x79d767
pop ebx
pop ebx
out 0xe3, eax
jecxz 0x79d721
pop ecx
retf
add eax, esp
sub ebp, dword [eax + 0x62]
out dx, eax
jecxz 0x79d72f
jecxz 0x79d72e
mov bl, 0x8b
sbb eax, 0x8be3ead0
cwde
inc ecx
shl ebx, cl
loop 0x79d72b
invalid
mov esp, ebx
jecxz 0x79d744
jecxz 0x79d76e
out 0xe3, al
jecxz 0x79d74a
or cl, bl
jecxz 0x79d74e
jecxz 0x79d723
push 0xeb66680f
punpckhbw mm4, qword [esi - 0x15]
jecxz 0x79d757
jecxz 0x79d7de
jbe 0x79d767
jecxz 0x79d75d
jecxz 0x79d7e4
outsb dx, byte [esi]
jecxz 0x79d763
jecxz 0x79d763
jecxz 0x79d7a4
or ah, cl
shl cl, cl
pushal
loope 0x79d7e7
and edi, esp
stosb byte es:[edi], al
out 0xaa, eax
in al, dx
pop ss
sbb al, 0x1c
sbb al, 0xbe
mov esi, 0x68e3ef21
and edi, ebp
jecxz 0x79d7fd
push 0xe3e7c76f
jecxz 0x79d77e
outsd dx, dword [esi]
invalid
mov ebx, dword [0x8be3ead0]
cwde
inc ecx
shl ebx, cl
loop 0x79d776
jecxz 0x79d788
iretd
invalid
out 0xe3, al
jecxz 0x79d791
jecxz 0x79d790
jecxz 0x79d7b9
or ah, byte [edx - 0x491c1c1f]
mov byte [0xb6e3e3e1], al
outsb dx, byte [esi]
pop edi
jecxz 0x79d7d5
xchg esi, eax
out dx, eax
sbb al, 0x96
jmp 0x79d7ca
jmp 0x79d7aa
jecxz 0x79d7ab
jecxz 0x79d82c
adc bl, byte [esp + ecx + 0x12625b7c]
or al, 0x7c
pop ebx
bound edx, qword [edx]
adc bl, byte [esp + ecx + 0x2ad05b7c]
pushfd
or al, 0x7c
pop ebx
shr byte [edx], 1
sal byte [ecx], 1
pushal
or esp, esi
stosd dword es:[edi], eax
xor dword [eax + 0xb], esp
out 0xab, al
in al, dx
lodsd eax, dword [si]
jecxz 0x79d7c5
jecxz 0x79d7c6
jecxz 0x79d7d0
in al, dx
imul ebp, dword [ebx - 0x7a1c1c1d], 0x68
invalid
jecxz 0x79d7cc
test dword [eax - 1], ebp
fisub dword [ebx + 0x18]
arpl word [eax], bx
or ebp, esp
stc
jecxz 0x79d7d8
jecxz 0x79d85a
sbb byte [edx], cl
in al, dx
bnd jcxz 0x79d7e1
jecxz 0x79d7e2
jecxz 0x79d785
test dword [edx + 0x18], esp
bound ebx, qword [eax]
sbb al, 0xc6
in al, dx
mul bl
jecxz 0x79d7ed
mov byte [0x1c1c2f0a], al
sbb al, 0xca
scasd eax, dword es:[edi]
invalid
or cl, byte [eax + 0x1c]
sbb al, 0x1c
mov esi, 0xb6e3ef21
push 0xb6b4b50f
push 0x9e68ef96
jmp 0x79d861
mov dh, 0x68
xchg esi, eax
out dx, eax
push 0x511feb9e
arpl word [ecx - 0x1b], bp
bound esp, qword [0xe3e3e3e2]
imul esp, ebp, 0xe3e22562
jecxz 0x79d82f
imul esp, esp, 0x62
and al, 0xe2
jecxz 0x79d836
jecxz 0x79d8ad
loope 0x79d83a
jecxz 0x79d83c
loope 0x79d88c
xor esp, ebp
in al, dx
out 0xe3, al
jecxz 0x79d844
imul esi, ebp, 0xec31f1a5
cmc
movsd dword es:[edi], dword [esi]
int1
xor esp, ebp
pushal
cmp ebx, dword [esp + ebx]
sbb al, 0xe1
xor esp, ebp
loope 0x79d89f
in al, dx
out 0xe3, al
jecxz 0x79d857
imul esi, ebp, 0xec31f1a5
movsd dword es:[edi], dword [esi]
int1
xor esp, ebp
pushal
mov ebx, esp
jecxz 0x79d862
shl byte [ebx], 1
loope 0x79d8b4
in al, dx
out 0xe3, al
jecxz 0x79d86c
imul esi, ebp, 0xec31f1a5
int1
xor esp, ebp
in al, dx
pushal
leave
loop 0x79d876
jecxz 0x79d876
xor esp, ebp
out 0xe3, al
jecxz 0x79d87f
imul esi, ebp, 0xf031f1a5
cmc
movsd dword es:[edi], dword [esi]
int1
xor eax, esi
and esp, ecx
xor esp, ebp
out 0xe3, al
jecxz 0x79d88e
imul esi, ebp, 0xf031f1a5
cmc
movsd dword es:[edi], dword [esi]
int1
xor eax, esi
and esp, ecx
xor esp, ebp
in al, dx
out 0xe3, al
jecxz 0x79d89d
jecxz 0x79d924
imul esi, ebp, 0xf031f1a5
cmc
movsd dword es:[edi], dword [esi]
int1
xor eax, esi
and esp, ecx
xor esp, ebp
out 0xe3, al
out 0xe3, al
jecxz 0x79d8ac
imul esi, ebp, 0xf031f1a5
and ebp, esp
in eax, 0xe3
jecxz 0x79d8b9
push 0x693bc83c
loopne 0x79d948
cmp ebp, dword [ecx - 0x20]
imul esp, esp, 0xffffffa4
in al, 0xa4
pop eax
loope 0x79d8c5
jecxz 0x79d8c7
or dl, byte [ebx + 0x5b1c1c1c]
sbb al, 0x5b
loop 0x79d8cf
jecxz 0x79d8d1
loope 0x79d921
in al, dx
out 0xe3, al
jecxz 0x79d8d9
imul esi, ebp, 0xf031f1a5
int1
xor eax, esi
and esp, ecx
xor esp, ebp
in al, dx
out 0xe3, al
jecxz 0x79d8e8
jecxz 0x79d96f
imul esi, ebp, 0xec31f1a5
cmc
movsd dword es:[edi], dword [esi]
int1
xor esp, ebp
popal
cmp eax, 0xc81c1c1c
sbb al, 0x1c
sbb al, 0xc8
and byte [eax - 0x1e], bl
jecxz 0x79d8f9
jecxz 0x79d904
xlatb
jecxz 0x79d8ff
jecxz 0x79d978
loop 0x79d903
jecxz 0x79d905
jecxz 0x79d904
loope 0x79d955
xor esp, ebp
in al, dx
out 0xe3, al
jecxz 0x79d90d
imul esi, ebp, 0xf031f1a5
sub ah, cl
xor esp, ebp
out 0xe3, al
jecxz 0x79d91c
imul esi, ebp, 0xec31f1a5
popal
cmp eax, 0xb51c1c1c
sbb al, 0x1c
sbb al, 0xb5
sbb al, 0x1c
mov ch, 0x68
adc al, 0xc8
push 0x1016c814
push ss
adc byte [edi - 0x43], al
or ch, bl
sbb al, 0x1c
inc edi
mov ebp, 0x1c1ceb0a
sbb al, 0xab
and al, byte [ebx]
jmp 0x79d9bf
imul esp, ebp, 0x5a0b68a5
loop 0x79d940
or ebx, dword [edx - 0x1e]
jecxz 0x79d941
jecxz 0x79d942
jecxz 0x79d941
loope 0x79d992
xor esp, ebp
in al, dx
out 0xe3, al
jecxz 0x79d94a
imul esi, ebp, 0xf031f1a5
int1
xor eax, esi
sub ah, cl
xor esp, ebp
out 0xe3, al
jecxz 0x79d959
imul esi, ebp, 0xec31f1a5
cmc
movsd dword es:[edi], dword [esi]
int1
xor esp, ebp
popal
cmp eax, 0x621c1c1c
sbb esp, ebx
sahf
jecxz 0x79d96a
jecxz 0x79d9ea
bound edi, qword [edx]
sbb al, 0x1c
cmp bl, byte [esp + ebx]
sbb al, 0x1c
bound ebx, qword [ebx]
jecxz 0x79d977
sbb esp, ebx
out 0xe3, al
jecxz 0x79d976
jecxz 0x79d9f6
bound edi, qword [edx]
sbb al, 0x1c
cmp bl, byte [esp + ebx]
sbb al, 0x1c
bound ebx, qword [ebx]
arpl bx, sp
jecxz 0x79d982
bound esi, qword [edx]
jecxz 0x79d986
jecxz 0x79d988
bound ebx, qword [ebx]
arpl bx, sp
jecxz 0x79d98e
bound esi, qword [edx]
jecxz 0x79d992
jecxz 0x79d993
jecxz 0x79d994
jecxz 0x79d967
mov ch, 0x68
push 0x1013c814
adc al, 0xc8
enter 0x1013, 0x47
adc edx, dword [eax]
inc edi
mov ebp, 0x1c1d780a
sbb al, 0x69
in eax, 0xa5
shr byte [edx], 1
and ecx, dword [ebx]
loop 0x79d9b3
sub ah, byte [ebx]
or esp, edx
in al, dx
stc
jecxz 0x79d9ae
jecxz 0x79da2f
xor ah, cl
jecxz 0x79d9b4
jecxz 0x79da3b
or esi, dword [ebp + 0x13c81468]
adc byte [edi - 0x43], al
pop eax
enter 0x1013, 0x47
mov ebp, 0xe3e3e258
jecxz 0x79d9ec
loop 0x79d9c2
jecxz 0x79d9c4
or dl, byte [eax - 0x41e3e3e3]
enter 0xffffffffffffeb9e, 0x68
and al, 0xbc
mov ebp, 0x21be0668
jmp 0x79d9d7
nop
sbb eax, 0xc8be1c1c
sahf
jmp 0x79da53
push 0x68bdbc24
push es
mov esi, 0xbce3eb21
mov esp, 0xbe0668bd
and ebx, ebp
push 0xeb21be06
jecxz 0x79d9b1
mov ebp, 0xe3e3e70a
or ah, bh
jecxz 0x79d9dd
jecxz 0x79d9b5
mov byte [0x9f5b281f], al
xor eax, 0x26e0e3da
bound esp, qword [ebx]
dec edx
loopne 0x79d9ee
jecxz 0x79da67
in eax, dx
loopne 0x79d9f3
jecxz 0x79da6b
or edi, esi
sub esp, dword [ecx - 0x2d]
mov dword [0x1566ecaa], eax
sbb al, 0x1c
sbb al, 0xa
out 0xe3, eax
jecxz 0x79da08
int3
test dword [ebx + 0xa], ebx
or ecx, dword [ebx]
retf 0x9e2
test dword [edi + 0xa], ebx
or ecx, dword [ebx]
retf 0x9e2
push ecx
mov cl, cl
or ecx, dword [ebx]
or ecx, dword [eax]
fisttp qword [edx + 0xb0b0bf0]
or eax, dword [edi + ecx*4]
add al, 0x8f
adc al, 0xb
or ecx, dword [ebx]
pop ebp
pop esp
or ebx, dword [ebp + 0x5c]
mov edx, ds
sbb byte [edx + 0x1b], 0x8c
fimul dword [eax]
jno 0x79da7b
fiadd dword [eax - 0x2573e4a6]
or byte [ecx + 7], dh
or byte [ecx + 0x1f], bh
stc
scasd eax, dword es:[edi]
push esp
push ebp
mov cl, cl
and ecx, dword [ebx]
or ecx, dword [ebx]
inc eax
loop 0x79da62
hlt