Function at 0x842c10
Capabilities:
Encode data using xor

Disassembly:
test dword [edi], ebx
push es
sbb ebp, dword fs:[edx + 0x61]
add dword [ecx], esi
or esp, dword [ecx + eax - 0x79c5affa]
dec ebp
sbb al, 0x28
insb byte es:[edi], dx
cdq
adc byte [edx], ch
mov edi, 0x96b1b0fd
sbb eax, 0x89d2339e
add byte [edx - 0x75], 0x3f
mov esi, 0x3107e371
lahf
jno 0x670ea9
mov dword [ecx], 0x30a01003
push edx
or esp, esp
push ebp
push ss
pop ds
into
dec dx
sbb ch, byte [edx]
sbb esp, dword [edi + 0x56560401]
sub cl, 0xde
xchg edx, eax
mov esi, 0x8d1f4b82
jno 0x670e48
or byte [ebp + ebp*2 + 0x468d9bf7], ch
push eax
mov bh, 0xe
add byte [edi + 0x115292b4], dh
shr esi, 1
adc ecx, edx
out dx, al
test eax, 0x9f38c25a
fnsave dword [ebx]
shr dword [eax], 1
fbld tbyte [eax + 0x483908fb]
lcall 0x905, 0x45a860de
sbb al, 0xa8
cmpsb byte [esi], byte es:[edi]
jg 0x670eed
push ebp
pop esp
mov eax, dword [0x65a7e61]
jg 0x670e7c
add eax, 0x4fff4872
test eax, 0xb1a84698
cdq
rol byte [esi + 0x36d40e5], cl
ret 0x803f
xchg ebx, eax
jle 0x670f3f
adc al, bh
or eax, dword [esi]
adc esp, esi
imul ebp, dword [edx + 0x24], 0xc75227df
add al, byte [edi + eax*2]
test al, 0x42
clc
add dword [edi + 9], edi
sub byte [0x9e60ad60], ch
add byte [edi + ebx*4], al
call 0x3f201dc4
scasd eax, dword es:[edi]
mov esi, 0x41c8108b
jb 0x670eba
in al, 0x60
inc esp
adc eax, 0xa9bf8a89
pop ecx
add al, 0x42
mov edi, 0x420459a9
leave
cmp byte [edx - 0x405f6b4b], al
in eax, 0x55
xor dword [eax - 0x5a], ecx
dec eax
jg 0x670f22
fsub dword [ecx + 0x28]
cmp al, 0x51
or byte [edi + 0x71], dh
test dword [edx], edi
push ds
cwde
jns 0x670f7e
add byte [eax - 0xba0f5ef], bh
test byte [esp + ecx + 0x5f655e5c], bl
out dx, eax
faddp st(3)
jp 0x670fc9
invalid
aas
mov eax, 0x1def1930
push edx
dec esp
mov al, 0xfc
dec esi
cli
or eax, 0xcdecab4e
sbb dword [0x53e67535], edi
sbb al, 0xf2
mov ecx, 0x5607e02b
push eax
lds ecx, [ecx + 0x40a1b512]
add al, byte [esi]
ret 0xa03b
wait
jnp 0x671003
in al, dx
lsl eax, edx
or cl, byte [ebp + 0x3b798d34]
pop edx
pslld mm5, mm7
pop edx
xchg edx, eax
loopne 0x670f8a
jne 0x670ffc
push 0xfffffffffffffffd
and eax, 0xed69b013
mov dword [esi + ecx], eax
jg 0x67100a
or al, 0xe
fdiv qword [eax - 0x50]
invalid
adc edx, ecx
xor eax, 0x61da501
shr edi, 1
out dx, eax
invalid
stosd dword es:[edi], eax
xchg esp, eax
push edx
inc eax
add eax, 0x3562779
mov dl, 0x47
inc edx
jns 0x67102c
push esi
add esi, dword [edx - 0x5476bdb9]
loope 0x670ffe
mov dword [ebx - 0xbb40f1f], ebp
add bl, cl
jle 0x670ff4
dec ebx
hlt
push esi
add al, 0x2b
ret 0x3ff
xor byte [0x2aff0212], dl
jb 0x67105c
sub edi, ecx
inc edx
or dh, byte [esi]
invalid
sbb al, 0xc1
xchg ebx, eax
or ebp, esp
fdiv st(3)
jmp 0x67106f
cmpsd dword [esi], dword es:[edi]
or al, byte [ecx + 0x7a8302cd]
mov byte [0x87ccb672], al
xor eax, 0xa25812d2
jns 0x671092
invalid
or al, 0x10
cmpsb byte fs:[esi], byte es:[edi]
stosb byte es:[edi], al
fcomp dword [edi + 0x4c]
rcr al, 0xc3
jb 0x67111a
rcr byte [ecx], 0x27
pushal
push ebp
push ebx
push dword [edi + 0x496db013]
add al, 0x3f
adc dh, byte cs:[ebp + 4]
loop 0x6710ab
add dword [edi - 0x457057cf], ebx
mov ebx, 0xa3206a08
int3
jmp dword [edx]
pushal
mov esi, section.UPX1
lea edi, [esi - 0x265000]
lea eax, [edi + 0x3b74dc]
push dword [eax]
mov dword [eax], 0x108b26c1
push eax
push edi
or ebp, 0xffffffff
jmp 0x842c42
mov al, byte [esi]
inc esi
mov byte [edi], al
inc edi
add ebx, ebx
jne 0x842c49
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x842c38
mov eax, 1
add ebx, ebx
jne 0x842c5b
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
add ebx, ebx
jae 0x842c6c
jne 0x842c8b
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x842c8b
dec eax
add ebx, ebx
jne 0x842c78
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
jmp 0x842c50
add ebx, ebx
jne 0x842c87
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
jmp 0x842cdd
xor ecx, ecx
sub eax, 3
jb 0x842ca3
shl eax, 8
mov al, byte [esi]
inc esi
xor eax, 0xffffffff
je 0x842d12
sar eax, 1
mov ebp, eax
jmp 0x842cae
add ebx, ebx
jne 0x842cae
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x842c7c
inc ecx
add ebx, ebx
jne 0x842cbc
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x842c7c
add ebx, ebx
jne 0x842cc9
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
add ebx, ebx
jae 0x842cbe
jne 0x842cda
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jae 0x842cbe
add ecx, 2
cmp ebp, 0xfffffb00
adc ecx, 2
lea edx, [edi + ebp]
cmp ebp, 0xfffffffc
jbe 0x842cfc
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
dec ecx
jne 0x842cee
jmp 0x842c3e
mov eax, dword [edx]
add edx, 4
mov dword [edi], eax
add edi, 4
sub ecx, 4
ja 0x842cfc
add edi, ecx
jmp 0x842c3e
pop esi
pop edi
pop eax
mov dword [edi], eax
mov edi, esi
mov ecx, 0x10b4f
mov al, byte [edi]
inc edi
sub al, 0xe8
cmp al, 1
ja 0x842d1e
cmp byte [edi], 0x35
jne 0x842d1e
mov eax, dword [edi]
mov bl, byte [edi + 4]
shr ax, 8
rol eax, 0x10
xchg ah, al
sub eax, edi
sub bl, 0xe8
add eax, esi
mov dword [edi], eax
add edi, 5
mov al, bl
loop 0x842d23
lea edi, [esi + 0x42d000]
mov eax, dword [edi]
or eax, eax
je 0x842d9b
mov ebx, dword [edi + 4]
lea eax, [eax + esi + 0x44327c]
add ebx, esi
push eax
add edi, 8
call dword [esi + 0x4433f4]
xchg ebp, eax
mov al, byte [edi]
inc edi
or al, al
je 0x842d50
mov ecx, edi
jns 0x842d7f
movzx eax, word [edi]
inc edi
push eax
inc edi
mov ecx, 0xaef24857
push edi
dec eax
repne scasb al, byte es:[edi]
push ebp
call dword [esi + 0x4433fc]
or eax, eax
je 0x842d95
mov dword [ebx], eax
add ebx, 4
jmp 0x842d6d
call dword [esi + 0x4433f8]
add edi, 4
lea ebx, [esi - 4]
xor eax, eax
mov al, byte [edi]
inc edi
or eax, eax
je 0x842dcc
cmp al, 0xef
ja 0x842dbf
add ebx, eax
mov eax, dword [ebx]
xchg ah, al
rol eax, 0x10
xchg ah, al
add eax, esi
mov dword [ebx], eax
jmp 0x842da1
and al, 0xf
shl eax, 0x10
mov ax, word [edi]
add edi, 2
jmp 0x842dae
mov ebp, dword [esi + 0x443400]
lea edi, [esi - 0x1000]
mov ebx, 0x1000
push eax
push esp
push 4
push ebx
push edi
call ebp
lea eax, [edi + 0x267]
and byte [eax], 0x7f
and byte [eax + 0x28], 0x7f
pop eax
push eax
push esp
push eax
push ebx
push edi
call ebp
pop eax
popal
lea eax, [esp - 0x80]
push 0
cmp esp, eax
jne 0x842e00
sub esp, 0xffffff80
jmp 0x670ea7