Function at 0x10072dc
Capabilities:
Encode data using xor

Disassembly:
and byte [edi], dl
add eax, 0x9ddacd40
jae 0x1007225
push cs
mov ebp, 0x221aa8e9
bound ebp, qword [edx]
mov al, 0x64
sub ah, byte [esi]
mov al, 0x64
rcr cl, cl
or al, 0x27
fiadd word [edx]
xchg edx, eax
mov bh, 0x92
push eax
sub dword [ebx + 0x54aa5c93], 0x26b36866
mov bl, 0x26
sal byte [edi + edx*4 - 0x79], cl
sal dword [ecx + 0x61119975], 1
popal
xchg ecx, edx
mov cl, 0x75
cdq
adc dword [ecx + 0x61], esp
nop
js 0x10072a6
insd dword es:[edi], dx
mov byte [ecx + edi*2 + 0x59], al
adc byte [eax + 0x7d], 0x45
sbb byte [ebp + edi*2 + 0x31], 0x80
sub byte [0x43346be2], bh
pop esp
jge 0x1007273
sub byte [eax], 0x3d
loop 0x10072b2
xor al, 0x43
scasb al, byte es:[edi]
sbb eax, 0x110ccfb9
pop ds
or al, 5
sub edi, esi
jnp 0x100725f
ljmp 0x2e8e:0xf6277c71
scasb al, byte es:[edi]
sub byte [ebp - 0x42cb512d], bh
invalid
test al, 0x40
or dl, byte [edx]
dec esp
mov cl, 0x8c
mov eax, 0x848fad72
jb 0x100720f
test byte [edx - 0x67], dh
invalid
nop
jb 0x10071ff
mov ds, word [ebp + edx*8 + 0x1c6860fa]
jge 0x10072f1
je 0x10072e6
rcr byte [ebp - 0x6b], 1
cmpsb byte [esi], byte es:[edi]
in al, 0x8e
ja 0x100723f
pushfd
out dx, eax
scasd eax, dword es:[edi]
les eax, [eax + 0x38bfb137]
sub ebx, dword [esi + 0x3c15cc13]
ja 0x100722a
out dx, al
sbb ah, byte [ecx]
fdiv st(3), st(0)
popfd
or al, 0x8e
out dx, eax
popfd
sbb bh, al
jnp 0x1007277
and al, 0x97
xlatb
rol ecx, 1
invalid
jmp 0x14b25e57
xchg ecx, eax
pop edi
test eax, 0x85933b20
xchg byte [eax - 0x61], bh
push esp
or dword [esi - 0x1f61a675], edi
and byte [ebx], bh
xchg ebx, eax
test dword [esi + 0x9549f78], eax
mov esi, 0xe09e598b
fidiv word [edi - 0x58]
nop
mov dword [0x939cb86b], eax
pop edi
mov al, byte [ecx + ecx]
jge 0x1007267
pop ecx
jb 0x1007357
popal
jmp 0x10072e6
pushal
call 0x10072ec
pop ebp
sub ebp, 0x10
add byte [eax], al
sub ebp, 0xc072dc
jmp 0x1007302
jb 0x10072b8
add cl, ch
add al, 0
add byte [eax], al
out dx, al
or al, 0x8c
je 0x10072bb
mov eax, 0xc072dc
add eax, ebp
add eax, 0x4c
mov ecx, 0x5ae
fdiv qword [edx - 0x40]
add byte [ebx], al
lds eax, [ecx + 0x4cc0]
add byte [ecx + 0x5ae], bh
mov edx, 0x52061f5c
xor byte [eax], dl
inc eax
dec ecx
jne 0x1007319
jmp 0x100732c
add bh, dl
xlatb
xchg ecx, eax
xlatb
aad 0x60
pop esp
pop esp
pop esp
fstp qword [ebp + 0x5c5c5ca4]
pop edi
xchg ecx, eax
in al, 0x59
pop esp
pop esp
pop esp
out 0x74, al
pop esp
pop esp
pop esp
stosd dword es:[edi], eax
mov esi, 0xddd7945f
push eax
pop esp
pop esp
pop esp
pop edi
cdq
sar dword [eax], 1
js 0x10072f6
aad 0x58
pop eax
js 0x100732b
cmp byte [eax - 0x60], bh
aad 0x58
js 0x1007395
xor byte [esi + 0x7e], al
pop esp
xor al, 0x2c
add al, 0xc2
pop esp
pop ebp
jo 0x10073e5
xor al, 0xdd
and byte cs:[0x5c5c59b4], bh
pop esp
mov ch, 0x76
pop esp
pop esp
pop esp
or ecx, edx
xor byte [eax + 0x5c], bh
xlatb
fst dword [esp + ebx*2 + 0x5c]
pop esp
xlatb
leave
push eax
pop esp
pop esp
pop esp
xlatb
ror dword [esp + ebx*2 + 0x5c], 1
pop esp
popfd
mov ch, 0x5e
pop esi
insd dword es:[edi], dx
pop esi
fistp word [esi - 0x26aceaa8]
test al, 0xa3
mov dword [0x509e01a3], eax
pop esp
xlatb
sar byte [eax + 0x58], 1
pop esp
pop esp
pop esp
xor al, 0x30
inc esi
jle 0x100740e
xor al, 0x2c
add al, 0xc2
pop esp
pop ebp
jo 0x1007432
or eax, 0x5c5c59b4
pop esp
mov ch, 0x67
pop esi
pop esp
pop esp
or ecx, edx
xor byte [eax + 0x5c], bh
mov dword [0x29a35029], eax
push esp
mov ah, 0x30
pop esp
pop esp
pop esp
xlatb
loope 0x100742c
pop esp
pop esp
pop esp
outsd dx, dword [esi]
xchg ebp, eax
outsd dx, dword [esi]
mov ds, edi
mov ah, 0x59
adc al, 0x53
fcom dword [edx]
pop esp
pop esp
pop esp
adc bl, byte [esp + ebx*2 + 0x5c]
push ebx
aam 0x14
pop esp
pop esp
pop esp
cmp dl, bh
inc eax
fsub qword gs:[edi + 0x46d853b4]
pop esp
pop esp
pop esp
fsub qword [edi + 0x4dd853b5]
pop esp
pop esp
pop esp
cmp bl, ch
cmpsd dword [esi], dword es:[edi]
mov dword [0x49d85379], eax
dec ecx
pop esp
pop esp
pop esp
sbb eax, 0xa3a390b5
mov dword [0x5d651075], eax
fistp word [ebp + 0x58b4df59]
mov ch, 0xe1
mov dword [0x875a3a3], eax
pop esi
fistp word [ebp + 0x58b6df5a]
fbstp tbyte [ecx + ebx*2 - 0x5c5c084b]
mov dword [0xd17870d7], eax
fbstp tbyte [esi + 0x59b4df58]
mov ch, 0xf7
mov dword [0x70d7a3a3], eax
js 0x100740c
cmp byte [eax + 0x58], bh
sahf
push eax
pop esp
or edi, edx
mov al, 0xa
or ecx, dword [ecx]
xlatb
sub dword [eax - 0x29], edx
and dword [eax - 0x12], edx
invalid