Function at 0x42f000
Capabilities:
Encode data using xor

Disassembly:
push 0x175237
pop ebx
push 0x42f018
pop edi
mov esi, 0x6c4
xor dword [esi + edi], ebx
sub esi, 2
sub esi, 2
jne 0x42f011
fild qword [edi]
push ss
add byte [edi], dh
push edx
pop ss
add byte [edi], dh
push edx
push edi
add byte [edx + eax*2], ch
pop ss
add byte [ebx], ch
xchg esi, eax
push cs
add cl, cl
sahf
push cs
add byte [edi], dh
loop 0x42f04c
add al, cl
lodsd eax, dword [esi]
call 0x555cfc3e
add byte [edi - 0xfffaae6], cl
sbb dl, byte [ebp]
aaa
push edx
pop ss
add byte [edi], dh
aaa
push edx
pop ss
add byte [edi], dh
push edx
pop ss
add byte [ebx], cl
cmp byte [edi], dl
add byte [ecx - 0xdffeae6], al
sbb dl, byte [0x17523700]
add byte [edi], dh
push edx
pop ss
add byte [edi], dh
push edx
pop ss
add byte [edi], dh
push edx
pop ss
add byte [edi], dh
push edx
pop ss
add byte [edi], bl
push eax
pop ss
add byte [edi], dl
push edx
pop ss
add byte [edi], dh
inc edx
pop ss
add byte [ebx + 0x53], al
pop ss
add byte [edi], dh
push edx
pop ss
add byte [edi], dh
push edx
pop ss
add byte [edi], dh
push edx
pop ss
add byte [edi], dh
push edx
pop ss
add byte [edi], dh
push edx
pop ss
add byte [edi], dh
push edx
pop ss
add byte [eax], al
add byte [eax], al
add byte [edi + esi + 0x65], bh
outsb dx, byte [esi]
push edx
and al, 0x32
sbb dword [esi], esi
jnp 0x42f118
aaa
adc eax, 0x37637472
jp 0x42f124
xor esp, dword [bp + di + 0x68]
jbe 0x42f10c
push eax
inc ebx
push es
jb 0x42f12d
inc edi
adc al, 0x7e
insb byte es:[edi], dx
push edx
sbb al, 0x76
insd dword es:[edi], dx
push edx
adc edx, dword [edi]
inc ebx
inc ebp
aaa
jbe 0x42f144
push edx
adc al, 0x7e
insb byte es:[edi], dx
push edx
adc edx, dword [edi]
push edx
push edx
xor esi, dword [ebx + 0x46]
pop esi
jb 0x42f0e0
pushal
and byte [esi + 0x74], bh
push edx
adc al, 0x7e
insb byte es:[edi], dx
push edx
push edx
inc esp
inc ebx
adc al, 0x7e
insb byte es:[edi], dx
push edx
add bh, byte [eax + 0x69]
pop ecx
jb 0x42f16a
aaa
adc dword [ebx + 0x6f], edi
inc esp
aaa
pop edi
popal
pop ecx
jnp 0x42f169
aaa
adc eax, 0x3b637472
je 0x42f177
je 0x42f14b
bound ebp, qword [esi + 0x43]
push edx
push eax
inc ebx
pop ds
js 0x42f17c
inc edx
jb 0x42f162
pop esi
jb 0x42f16e
push esi
aas
jb 0x42f165
aaa
adc edx, dword [ebx + 0x56]
jbe 0x42f12c
pop esi
xor eax, dword [0x5b6c737c]
add eax, 0x5b6c737c
jl 0x42f1a2
insb byte es:[edi], dx
pop ebx
push edx
inc ebp
push eax
sbb eax, 0x19596567
jb 0x42f1b5
jb 0x42f168
push esi
add byte [ebp + 0x37], ah
jo 0x42f195
inc edx
aaa
jns 0x42f1aa
xor edi, dword [ebx + 0x75]
push edx
jne 0x42f19f
pop ss
outsd dx, dword [esi]
inc ecx
aaa
add byte [edx + 0x67], dh
je 0x42f194
js 0x42f1cb
push edx
sbb dword [edx + 0x79], esi
aaa
add dword [eax + 0x66], edi
inc ebx
and eax, 0xe527276
jbe 0x42f1d6
push edx
push cs
pop edx
imul edx, dword [eax + 0x78], 0x63345873
push esp
and byte [eax + 0x73], bh
js 0x42f1df
pop eax
xor al, 0x63
arpl word [eax + 0x3b], bx
jns 0x42f1d8
pop esp
pushal
cmp edi, dword [ecx + 0x64]
pop eax
and eax, 0x27745c64
pop esp
je 0x42f1a1
jb 0x42f1cf
push edx
cmp al, 0x63
push esi
push edx
and byte [ecx + ebp*2 + 0x58], ah
cmp al, 0x4b
inc ebp
dec edi
and bh, byte [ebx + 0x6f]
inc ebp
aaa
add byte gs:[edi + 0x1b], ah
pop ecx
inc esi
aaa
sbb edi, dword [ecx + 0x69]
inc ebx
cmp esi, dword [esi + 0x74]
push edx
push edx
inc edx
mov ebx, ebx
rcl ebx, cl
mov ah, 0xc9
lodsd eax, dword [esi]
call 0x17e86471
sal dword [ecx + ecx*8 + 0x72c6e8ad], cl
movsd dword es:[edi], dword [esi]
pop ss
mov esi, edx
rcl edi, 1
add al, 0xbc
inc edx
xchg esp, eax
ljmp 0x1fbc
fild dword [edx - 4]
mov esp, 0xf681eb1f
salc
not dh
pop ss
add byte [edi], dh
fistp dword [edx - 8]
mov esp, 0x678beb17
pop esi
pushfd
dec ebp
retf
or byte [edi + edx*4 - 0x24cc3f6c], bh
pop es
inc dword [edx - 0x56]
inc edx
stosb byte es:[edi], al
call 0x4322bd54
mov esp, 0x6fba65
aaa
push edx
xchg ebx, eax
rol byte [ebx + 0x3f], 0xe8
jne 0x42f1bc
fistp word [edx - 0x44]
fist word [edx - 0x1752364c]
push eax
fist word [edi + 0x15]
add byte [edi], dh
salc
xlatb
je 0x42f215
xor al, 0x94
mov ebp, 0xffe8ac83
xor dword [eax], esp
push cs
inc dword [edx - 0x56]
call 0x4322bd88
mov esp, 0xb69adf65
leave
lodsd eax, dword [esi]
call 0x1546d170
add byte [edi], dh
ficom dword [edx - 9]
mov bh, 0x2f
loopne 0x42f228
fistp word [edx - 0x1752364a]
push ecx
fild word [ebx]
adc eax, 0x52da3700
div dword [edi + 0x4200e02f]
inc edx
jg 0x42f213
jne 0x42f1f8
fist word [edx - 0x44]
fild word [bp + si - 0x364a]
lodsd eax, dword [esi]
call 0x1616d18d
add byte [edi], dh
salc
xlatb
je 0x42f262
lodsd eax, dword [esi]
invalid
pushfd
inc ebp
cmp ebx, ecx
inc edi
and byte [eax + ebx*2 - 0x24c0ba64], bh
pop ds
mov esp, dword [edx + 0x5e]
pushfd
dec edx
pop ss
rcl esi, 1
add al, 0xbc
push ebx
pushfd
push ebp
aas
fist dword [ebp + 4]
enter 0x727, 0xffffffffffffff8b
jp 0x42f2e0
call 0xeb5ab09c
or dword [edx - 0x52], 0x17
btr dword [ebx - 0x26c8ffe9], ebp
push edx
or al, 0xc8
and dh, byte [ebx]
inc dword [edx - 0x52]
pushfd
push ebp
aas
lodsd eax, dword [esi]
inc ebp
add al, 0xbc
pop ds
sbb ecx, dword [ebx + 0x29e7266]
mov esp, 0x47ff1b17
jp 0x42f29b
jne 0x42f280
fstp dword [edx + 8]
enter 0x1303, 0xffffffffffffff8b
bound ebx, qword [esi - 0x64]
dec edx
pop ss
rcl esi, 1
add al, 0xbe
push ebx
pushfd
inc ebp
daa
rcl edi, 1
or eax, 0xfc62ad67
mov esp, 0x67ff1f17
push esi
pushfd
push ebp
aas
fist dword [ebp + 8]
mov esp, 0xf683071f
dec eax
inc esi
inc dword [edx - 0x52]
test byte [eax + 0x46], 0xff
inc edx
scasb al, byte es:[edi]
pushfd
inc ebp
aas
lodsd eax, dword [esi]
inc edi
add al, 0xbc
pop es
pop ds
mov dword [ebp + 0x5e], esi
pushfd
dec ebp
daa
rcl esi, 1
sub esp, dword [esi - 0x53]
invalid