Function at 0x79d9a8
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x79d9ae
pop ebp
sub ebp, 6
sub ebp, 0x39d9a8
jmp 0x79da0c
test al, 0xba
scasb al, byte es:[edi]
xchg edx, eax
pop edi
add dword [eax], eax
add byte [eax], al
jb 0x79da59
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
add al, 0x9d
imul esi, ebx, 0xffffffb8
test al, 0xd9
cmp dword [eax], eax
jmp 0x79da15
mov eax, 0x39d9a8
add eax, ebp
add eax, 0x93
mov ecx, 0x623
mov edx, 0xb50ca182
xor byte [eax], dl
inc eax
dec ecx
jne 0x79da2c
jmp 0x79da3f
call 0x92fcc506
add byte [edx - 0x51b17d16], 0x82
mov cl, 0x42
sar byte [ebp + 0x17], cl
inc esi
and dh, byte [edx + 0x4f09d282]
or dword [ebx], ecx
mov esi, 0x3828282
inc ebx
jp 0x79d9e3
add byte [edx - 0x79c5b07f], 0x82
add byte [edx - 0x7d7d55c8], 0x82
jne 0x79dad1
or dword [edx + 9], 0x82828e03
add byte [ecx - 0x56152db9], 0xb5
mov eax, dword [edx - 0x4ddf0616]
add byte [ebx - 0x7d155952], 0x82
add byte [edx - 0x7d7d7896], 0x82
imul ebp, dword [edx - 0x287d7d7e], 0xffffffd6
fisttp word [ecx]
pop es
mov al, byte [edx + 0x17098282]
mov es, word [edx + 0xf098282]
xchg edx, eax
add byte [edx - 0x7f94bc7e], 0xb3
add byte [ecx], 0x40
xchg bl, cl
lea eax, [edi]
jbe 0x79db37
jge 0x79db39
fild word [eax - 0x72]
or byte [ecx], 0xe
cmpsb byte [esi], byte es:[edi]
xchg byte [edx - 0x56157d7e], al
mov ch, 0x8b
sub dl, 0xf9
and byte [edx - 0x59517c7e], dh
shr dword [edx - 0x79], cl
add byte [edx - 0x7f3c947e], 0x82
adc bh, 0xf
out dx, al
cmpsb byte [esi], byte es:[edi]
cmp byte [ebp - 9], 0x8e
sub dword [esi - 0x78952c5a], 0xffffff82
add byte [edx - 0x7d7f3c95], 0x82
xlatb
pmaxsw mm4, qword [esi - 0x7108827e]
jge 0x79dae0
test dword [edx - 0x7d7d0f96], 0x8a3f0982
add byte [edx + 0x2c730382], 0x62
or edi, ebp
mov ch, byte [edx - 0x10]
add byte [edx - 0x75c0f67e], 0x82
add byte [edx + 0x622c7303], 9
out dx, eax
add esi, dword [ebx + 0x2c]
bound ecx, qword [ecx]
out dx, eax
mov cl, 0x4b
mov cl, 0x50
add dword [edx - 0x79], ebp
retf 0x68d
add bh, byte [ecx + 0x6a]
lea eax, [esi]
cwde
add byte [edx + 0x6b790282], 0x8d
push es
xchg ebx, eax
add byte [edx + 0x7903e482], 0x7d
cmpsd dword [esi], dword es:[edi]
lea eax, [esi]
xchg edi, eax
add byte [edx + 0x4e6bc382], 0x7d
jge 0x79dbb9
imul ecx, dword [esi + 0x7d], 0x7d
jge 0x79dbb8
jge 0x79dae8
stosd dword es:[edi], eax
into
mov ebx, 0x87430183
add dword [edx - 0x7a], ebp
imul edi, dword [edi], 0x7d
jge 0x79dbc8
stosd dword es:[edi], eax
salc
mov ebx, 0x84430180
add dword [eax - 0x7a], ebp
add dword [edx - 0x79], ebp
imul ebp, dword [ecx], 0x7d
jge 0x79dbda
fild word [eax - 0x72]
adc bh, 9
outsb dx, byte [esi]
aam 0xd5
xlatb
or edi, esi
mov cs, word [ecx]
dec dword [edx + 0x802307e]
test byte [ebx], al
inc esp
add dword [edx - 0x7af57d7e], 3
inc ebp
add dword [edx - 0x7fc67d7e], 0xffffff82
add byte [edx + 0x78d5080], 0x87
add byte [edx - 0x3b6bf77e], 0x90
push eax
lea eax, [ecx]
pop edx
jge 0x79dc14
jge 0x79db19
push eax
lea eax, [edi]
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax - 0x17fe72b0]
add byte [edx - 0x7fbd4e7e], 0x50
lea eax, [edi]
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax - 0x57fe72b0]
add dword [edx - 0x72af7f7e], 7
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax - 0x7fbd6eb0]
push eax
lea eax, [edi]
nop
push eax
lea eax, [ecx]
test al, 0x83
add byte [edx + 0x78d5080], 0x87
add byte [edx - 0x3b6bf77e], 0x90
push eax
xchg ecx, eax
inc edx
or byte [esp + eax*8 + 0x42915090], dl
adc byte [eax - 0x73], 7
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax - 0x7fbd6eb0]
push eax
lea eax, [edi]
nop
push eax
xchg ecx, eax
inc edx
adc byte [eax - 0x73], 7
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax - 0x7fbd6eb0]
push eax
lea eax, [edi]
or byte [esp + eax*8 + 0x42915090], dl
adc byte [eax - 0x73], 7
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax - 0x72bd6eb0]
push es
test byte [edx + 0x5d098282], al
test eax, 0xa81085a
test ebp, eax
cmp dword [eax + 0x6b828282], eax
bnd jge 0x79dc91
jge 0x79dc50
add dword [edx + 0x50808282], 0xffffff8d
pop es
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax - 0x7fbd6eb0]
push eax
lea eax, [edi]
xchg dword [edx - 0x6bf77d7e], eax
xchg esp, eax
les edx, [eax + 0x5c008d50]
jge 0x79dcb8
jge 0x79dbe6
inc ecx
cmp dword [ebx - 0x727d7d7e], eax
pop es
mov dh, 0x82
add byte [edx - 0x7d7d7cc5], 0x82
adc byte [eax - 0x73], 7
cmp byte [ebx], 0x83
add byte [edx - 0x72af7f7e], 7
lea eax, [edi]
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax - 0x7fb46eb0]
push eax
lea eax, [edi]
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax + 0x5c008d50]
jge 0x79dcec
jge 0x79dc45
or dword [ebp - 0x57], esi
ja 0x79dce7
fsubr qword es:[ebx - 0x76]
jge 0x79dcf9
jge 0x79dc48
inc ebx
bound ecx, qword [edx + 0x9c48408]
push 0x3b
add dword [edx + 0x50808282], 0xffffff8d
pop es
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax - 0x7fb46eb0]
push eax
lea eax, [edi]
add byte [edx - 0x6f3b6bf8], 0x50
xchg ecx, eax
dec ebx
adc byte [eax - 0x73], 7
xchg dword [edx - 0x6bf77d7e], eax
les edx, [eax + 0x5c008d50]
jge 0x79dd29
jge 0x79dcb1
add edi, dword [edx - 0x7e]
jp 0x79dc32
inc dword [edx + 0x7d5b0382]
jge 0x79dd35
add byte [edx + 0x7d7d5b03], 0x7d
jge 0x79dcbd
jp 0x79dc3e
xchg dword [edx + 0x7d5b0382], eax
jge 0x79dd41
add byte [edx + 0x7d7d5b03], 0x7d
jge 0x79dcc9
jp 0x79dcca
add byte [edx - 0x7dacfc7e], 0x82
add byte [edx - 0x7dfd85fd], 0x82
add byte [ebx], 0x53
add byte [edx - 0x7d7dacfd], 0x82
add byte [ebx], 0x7a
add al, byte [edx + 0x53038282]
add byte [ebx], 0x53
add byte [edx + 0x7a038282], 2
add byte [edx - 0x7dacfc7e], 0x82
add byte [edx - 0x568af62c], 0x72
jno 0x79dd0a
add byte [edx + 0x9d48282], 0x75
test eax, 0xdc267172
imul ebx, dword [ecx], 0x7c
jge 0x79dd67
fsubr qword [ebx + 0x19]
jl 0x79dd66
jge 0x79dcf3
or byte [esp + eax*8 + 0x6a424bb1], al
or dword [ebp - 0x7d7d67fa], 0xffffff82
add edx, dword [ebx - 0x80]
add byte [edx - 0x2b95f67e], 9
jne 0x79dcad
test ah, al
mov cl, 0x4b
inc edx
push 0xffffffffffffff83
les esi, [ecx - 0x7c95bdb5]
lea eax, [esi]
push es
cwde
add byte [edx - 0x7facfc7e], 0x82
add byte [edx + 0x9d46a09], 0x75
test eax, 0xdc267172
cmp dword [ebx + 0x6b828282], eax
int1
jl 0x79dd8e
push ebx
add byte [edx + 0x6a098282], 0xd4
or dword [ebp - 0x57], esi
jb 0x79dd77
fdivr qword es:[ecx]
add dword [edx - 0xe947d7e], 0x7c
jge 0x79dd8f
add byte [edx + 0x7cf16b82], 0x7d
jge 0x79dcf2
fild qword [ecx + 0x45098aff]
test eax, 0x45098aff
fstp st(4)
or dword [edi - 0x21], esp
inc eax
mov al, byte [edx - 0x79942323]
add byte [edx - 0x7b8a207e], 0x9f
cmp ch, byte [edx]
pop ebx
mov ebx, 0x3478182
inc edx
sub eax, dword [ecx - 0x70c47d7e]
add dword [edx - 0x214ec77e], 0x92b2e6f1
test byte [edi - 0x44a4d5c6], bl
add byte [ecx + 0x2b420347], 0x81
add byte [edx - 0x7d7e70c5], 0x82
cmp byte [ecx - 0x4d190e22], dh
add dword [edx - 0x7e70c47e], 0xb1388282
pop dword [ecx - 0x4ec77d7e]
fdivrp st(1)
out 0xb2, al
xchg edx, eax
ret 0x8dcb
cmp bh, byte [edi]
aas
in eax, 0xb0
mov cl, 0xb1
jo 0x79ddc6
mov bl, 0x43
adc al, 0xee
out dx, eax
cmp ch, byte [edi]
lea esi, [ecx - 0x411d4e4f]
mov cl, 0xb1
loop 0x79dd39
push cs
in eax, dx
xor byte [edi + 0x497330eb], 0xb1
mov cl, 0xb1
mov dl, 0x67
xor byte [edx - 0x4f], cl
mov cl, 0xb1
mov cl, 0xbe
mov esi, 0xb1b1ae35
mov cl, 0xe7
out 0x36, al
pushal
xor eax, 0xb1b1b1ae
out 0xe6, eax
pushal
cmp ah, al
mov eax, dword [0xcbb26036]
mov ebp, 0x43a5c3b2
adc eax, 0x7330efee
cdq
mov cl, 0xb1
mov cl, 0xfa
pop eax
dec esi
dec esi
dec esi
fnstenv [ecx - 0x264e4e0f]
mov cl, 0x7d
popfd
mov cl, 0xe7
dec esi
and al, 0x79
adc dword [ecx + 0x3a4f36b1], eax
iretd
cmp cl, bh
lea edi, [edx]
or eax, 0xb1b11186
mov cl, 0xb2
dec edi
out 0xea, eax
xor byte [edx - 0x4f], bl
mov cl, 0xf1
mov cl, 0x36
dec ebx
cmp cl, bl
mov cl, 0x36
dec ebx
dec eax
cmp cl, al
mov ch, 0x36
dec eax
xor byte [ebx - 0x4f], cl
mov cl, 0xb1
mov cl, 0xbe
xor eax, 0xb1b1b1f7
mov dl, 0x67
xor byte [esi - 0x47], dh
mov cl, 0xb1
mov cl, 0x30
pop eax
mov ecx, 0x30b1b1b1
dec eax
mov cl, 0xb1
mov cl, 0xb1
mov esi, 0x4e4e7d35
dec esi
xlatb
cmp dh, byte [esi + 0x32bd5970]
push ecx
mov esi, 0xb1b24930
mov cl, 0xb1
mov esi, 0xb1b1bc34
mov cl, 0xd7
cmp dh, byte [esi - 0x41b1aed0]
mov cl, 0xb1
mov dl, 0x73
mov al, 0xa9
clc
clc
xor dh, byte [esi - 0x4d]
pop eax
jns 0x79de86
dec esi
dec esi
pop eax
mov ch, 0xb1
mov cl, 0xb1
fcmovnu st(0), st(6)
loopne 0x79debb
or dword [ecx], ebx
push 0x74b2b188
xor byte [ecx + 0x70], dh
mov ch, 0xb1
mov cl, 8
inc esp
mov al, 0xb1
mov cl, 0xb
leave
lodsb al, byte [esi]
sub eax, 0xf1a1814a
clc
mov esi, 0x4e4e4734
dec esi
pop eax
mov ch, 0xb1
mov cl, 0xb1
ficom word [eax - 0x48bd8955]
cmc
inc edx
jne 0x79de71
dec ecx
leave
leave
leave
retf 0x4a37
retf 0x990f
dec edx
mov dh, 0xd9
leave
invalid