Function at 0xd89ac8
Capabilities:
Encode data using xor

Disassembly:
inc dl
clc
pushfd
push dword [esp + 4]
ror dl, 2
bt ecx, 0xb
add dl, 0x28
stc
call fcn.00d82f0d
add byte [eax], al
insd dword es:[edi], dx
insd dword es:[edi], dx
imul ebp, dword [edi + 0x43], 0x74616572
inc ebx
push 0x6b6e75
push edi
push ebx
dec edi
inc ebx
dec ebx
xor esi, dword [edx]
insb byte es:[edi], dx
insb byte es:[edi], dx
add cl, ch
or edx, dword [ecx]
add byte [eax], al
add byte [eax], al
inc edi
je 0xd7c9a5
jb 0xd7c9c5
imul ebp, dword [edi + 0x6e], 0x4c000000
outsd dx, dword [esi]
popal
push edx
jae 0xd7c9cf
jne 0xd7c9d4
arpl word [ebp], sp
shl bh, 1
invalid
pop es
adc esi, dword [edi - 0x34f897aa]
aam 0x4b
xchg edx, eax
sar dh, cl
cmp ah, byte cs:[esi + 0x5e45c045]
pop es
retf
test eax, 0x3fcfb184
sbb al, 0x4c
invalid
jmp 0xd861b5fa
xchg ecx, eax
dec esp
xchg esi, eax
lodsd eax, dword [esi]
mov dword [0x6400854b], eax
push 0xbc156ebd
dec ebx
test dword [eax], eax
push 0xbc156ebd
xchg edi, eax
xlatb
ja 0xd7ca5c
push ss
push ss
inc esi
in eax, 0x14
arpl word [esi + ebx*4 - 0x38], di
push 0x305a65c5
nop
jle 0xd7c9b3
push ds
jle 0xd7c9a0
xor bh, byte [ecx + 0x1353f874]
div dword [esi]
xor eax, 0x6eb0870f
add byte [eax], al
sub eax, eax
push 0xf283abfc
pushal
push dword [esp + 4]
lea esp, [esp + 0x28]
call fcn.00d89c39
pushfd
lea esp, [esp + 4]
jae 0xd83878
push esi
mov bl, 2
inc al
push 0xc5dcf086
inc ecx
push dword [esp + 4]
mov al, 0xb6
pushal
mov al, 0x10
call fcn.00d02a34
add byte [eax], al
dec ecx
outsb dx, byte [esi]
je 0xd7caa8
jb 0xd7cab3
je 0xd7ca8b
insb byte es:[edi], dx
outsd dx, dword [esi]
jae 0xd7cab1
dec eax
popal
outsb dx, byte [esi]
insb byte es:[edi], dx
add byte gs:[eax], al
add byte [esi + 0x69], dl
jb 0xd7cacd
jne 0xd7cabc
insb byte es:[edi], dx
push ecx
jne 0xd7cac4
jb 0xd7cada
add byte [eax], al
add byte [ebx + esi*2 + 0x74], ch
jb 0xd7cad5
outsb dx, byte gs:[esi]
inc ecx
add byte [eax], al
add byte [ebp + 0x6e], dl
push 0x576b6f6f
imul ebp, dword [esi + 0x64], 0x4873776f
outsd dx, dword [esi]
outsd dx, dword [esi]
imul eax, dword [ebp + 0x78], 0
push 0x9a541647
call fcn.00d8c652
add byte [eax], al
dec eax
fsubr dword [eax + edi - 0x3e990716]
test dword [edx], 0xf766c029
shr dword [eax - 0x12], cl
rol byte [esi + 0x245c8b32], 4
or byte [edi], cl
mov dword [ecx + 0x75], edx
add byte [eax], al
wait
xchg ecx, eax
fsub qword [eax]
add dword [eax], edx
lcall 0xfff8, 0x5b03e960
add byte [eax], al
dec ecx
outsb dx, byte [esi]
add byte [edx + 0x5b03e960], bl
clc
inc dword [eax]
add byte [ecx + 0x6e], cl
je 0xd7cb37
jb 0xd7cb42
je 0xd7cb26
je 0xd7cb26
jo 0xd7cb3e
outsb dx, byte [esi]
push ebp
jb 0xd7cb49
inc ecx
add byte [ebp + ecx*4 + 0xf042464], bl
test byte [edx + 0x660000ec], dh
bt ebx, 0xe
mov edx, 0xc2f60ee3
lahf
movsb byte es:[edi], byte [esi]
add ch, byte [ecx + 0x7e]
jg 0xd7cac2
lds edi, [ebp + 0x31a08cff]
cmp dword [edx - 0x5a], ebx
out dx, al
leave
lea ebx, [eax - 0x3e]
mov dh, 0x8b
jbe 0xd7caec
mov eax, dword [0xd2fd00c0]
pushal
cmp eax, 0xa0e4ff25
shl byte [eax + 0x3d], cl
and eax, 0x97a0e4ff
xchg edi, eax
and dword [edx], 0x66
aad 0xc0
or esp, dword [ebp + 0x721291bf]
das
aaa
jge 0xd7cb8a
call 0x3c924935
out dx, al
test dword [ebx + 0x29823c48], esi
mov edi, 0xa312afbf
cmp byte [edi*2 - 0x7a01004a], ch
scasb al, byte es:[edi]
cli
aad 0x82
sub al, 0x7d
mov dh, 0xff
inc byte [ebp - 0x7d2a0552]
add eax, 0x12abbfbb
shr byte [esp + edx*4 + 0x1fb6305e], 0xa0
sar dword [edi - 0x7cfbbfe1], cl
adc al, al
lodsb al, byte [esi]
xchg esp, eax
pop esi
xor byte [esi - 0x402c5fe1], dh
pop ds
inc eax
add al, 0x83
and byte [edi + 0x41701210], bh
adc byte [edx], dl
jo 0xd7cbcf
dec ecx
jge 0xd7cbb0
mov cl, 0xa5
test dword [esi], edi
dec ebx
sbb byte [esi], 0xe5
mov edi, 0x3a4612ed
jge 0xd7cb79
inc eax
test dword [eax - 0x77dbaa7], ebx
jg 0xd7cb6b
jae 0xd7cb8f
mov byte [ecx + 0x5f], cl
pop edi
adc cl, bl
pop eax
dec esp
sbb dl, bl
packuswb mm7, qword [ebp - 0x24]
movsb byte es:[edi], byte [esi]
lodsb al, byte [esi]
test dword [esi + 0x4982d9fa], eax
add dword [0xc5eac10d], ecx
jg 0xd7cbe3
mov byte [0xa053ff96], al
aad 0xb1
and cl, byte [ecx]
mov al, byte [0x922b1d5]
ret
inc esi
dec edx
test ebx, esi
dec ebx
pop ss
sbb byte [0x129bbfa3], 0xda
daa
idiv byte [ebp - 0x69]
adc al, 0xef
test esp, ecx
pushfd
mov byte [edx + 0x76419624], al
inc eax
adc edi, dword [edi - 0x3caed06]
in al, dx
movsb byte es:[edi], byte [esi]
adc al, byte [ebx - 0x3b1a8289]
int3
push ebp
mov al, byte [esp]
pushf
pop word [esp + 0x22]
dec dl
dec dl
pushfd
setnp dl
mov dl, byte [esi]
jmp 0xd7c90e