Function at 0x1542089
Capabilities:
Encode data using xor

Disassembly:
pop eax
add eax, 0xb
mov dword [ebx], eax
jmp 0x1542065
call 0x154206f
popfd
shr al, 1
loop 0x15420bf
mov ebx, esi
pop ecx
call 0x1542089
adc al, byte [eax]
add byte [eax], al
xchg ebx, eax
out 0x59, eax
push esi
daa
sub edx, dword [ebx]
out 0x15, eax
dec esp
fisub word [esi + 0x6881894]
jns 0x1542073
or eax, 0x86000000
sal byte [edx - 0x5d], 1
arpl word [ebp + 0x44], ax
push esp
mov esi, dword [edx - 0x15]
loope 0x1542117
pop ebx
sti
add ecx, 0xe19d
push eax
movsx edi, di
pop ebx
push 0x383e
mov bl, 0x29
pop esi
mov eax, dword [ecx]
mov bl, 0xf2
xor eax, 0x743ad327
mov bx, ax
xor eax, 0x44cd513d
mov di, 0x860
xor eax, 0x6ca916b0
jmp 0x15420dc
cmp eax, 0x6644cd51
mov edi, 0xf0810860
mov al, 0x16
test eax, 0xae96c
add byte [eax], al
inc esp
jl 0x154214b
mov dh, 0x78
mov byte [0xb4a55c8b], al
push eax
sbb bl, 0x50
pop dword [ecx]
mov bl, ch
sub ecx, 4
jl 0x15420f2
mov edi, 0x71ed27a4
sub esi, 1
jne 0x15420b0
and di, 0x155
sti
mov eax, 0x7a75131b
mov eax, 0x2cd3e849
mov ecx, 0x62a29d67
cmp dword [ebp + 0x122d15d9], 0
je 0x154212a
sub eax, 0x840f0012
or al, byte [eax]
add byte [eax], al
mov dword [ebp + 0x122d3a63], 1
mov eax, dword [ebp + 0x122d10cd]
mov esi, eax
mov ecx, dword [esi + 0x3c]
add esi, ecx
mov ecx, 0x400000
mov dword [ebp + 0x122d23f3], ecx
mov edi, dword [ebp + 0x122d394b]
test edi, edi
jne 0x1542155
test dword [0xe9000000], eax
inc ecx
add dword [eax], eax
add byte [ecx + 0x4c84b9fe], cl
add byte [eax], al
jmp 0x1542296
mov esi, edi
mov ecx, 0x4c84
lodsb al, byte [esi]
xor al, 0x37
stosb byte es:[edi], al
dec ecx
jne 0x154215c
mov ecx, dword [ebp + 0x122d394b]
mov edi, dword [ebp + 0x122d10cd]
mov esi, dword [ebp + 0x122d23f3]
cmp edi, esi
jne 0x1542186
jmp 0x1542287
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
sub dword [ebp + 0x122d0869], edx
sub edx, 8
add ecx, 8
add eax, edi
pushal
mov ebx, eax
push ebx
push 0x1000
push ebx
call dword [ebp + 0x1244ca08]
pop ebx
test eax, eax
je 0x15421c7
lea eax, [ebp + 0x122d353e]
push eax
push 0x40
push 0x1000
push ebx
call dword [ebp + 0x124579ab]
popal
mov bx, word [ecx]
test bx, 0xf000
je 0x154226e
and ebx, 0xfff
add ebx, eax
cmp dword [ebp + 0x122d3813], 1
jne 0x1542204
cmp byte [ebx - 2], 0xe8
jne 0x1542204
cmp byte [ebx + 3], 0x90
jne 0x1542204
jmp 0x154226e
cmp byte [ebx - 1], 0xc5
jne 0x1542231
cmp dword [ebp + 0x122d3a1f], 0
je 0x1542231
cmp dword [ebp + 0x122d10ed], 0
je 0x1542231
mov byte [ebx - 1], 0xe9
jmp 0x154226e
cmp dword [ebp + 0x122d15d9], 0
je 0x154225e
cmp byte [ebx - 1], 0xc5
jne 0x154225e
cmp dword [ebp + 0x122d3a1f], 0
je 0x154225e
mov byte [ebx - 1], 0xe9
jmp 0x154226e
cmp dword [ebx], 0x90909090
je 0x154226e
sub dword [ebx], esi
add dword [ebx], edi
add ecx, 2
sub edx, 2
jne 0x15421c8
cmp dword [ebp + 0x122d0869], 0
jne 0x1542186
mov edi, dword [ebp + 0x122d394b]
mov ecx, 0x4c84
xor al, al
rep stosb byte es:[edi], al
mov edx, 0x286299f6
mov edi, dword [ebp + 0x122d1561]
mov ecx, 0x79
lea esi, [ebp + 0x125372e9]
rep movsb byte es:[edi], byte [esi]
xor edx, 0x28634112
mov edi, dword [ebp + 0x122d1561]
add edi, 0xe
test edx, edx
je 0x15422cb
add edx, dword [ebp + 0x122d10cd]
mov dword [edi + 1], edx
mov edx, dword [ebp + 0x122d2635]
mov edi, dword [ebp + 0x122d1561]
add edi, 0x54
mov dword [edi + 1], edx
mov edi, dword [ebp + 0x122d1561]
add edi, 0x49
mov dword [edi + 1], ebp
mov edi, dword [ebp + 0x122d1561]
add edi, 0x25
mov dword [edi + 1], ebp
jmp 0x1542376
mov eax, edx
jmp 0x15423ba
mov ecx, eax
lea eax, [ebp + 0x12537369]
mov dword [ebp + 0x1249944c], eax
dec dl
mov dh, 0x86
add eax, 0x410f35a9
mov edi, ebp
xchg dword [0xead5aba9], eax
jne 0x1542430
test byte [0x410c33a9], al
mov edi, dword [edx - 0x17a851a3]
or al, 0x41
mov eax, dword [ebp - 0x7b]
add eax, 0xead5aba9
jne 0x15423ff
test dword [0x410ddea9], eax
mov ecx, dword [esi + 0x58a90585]
add al, byte [ecx - 0x75]
add byte [edx - 0x2a5456fb], cl
ljmp 0x2077
nop
jbe 0x1542463
int1
inc ebx
and ecx, edx
in al, dx
fst dword [edi + 0x2f]
aam 0xfb
and bh, byte [ecx + 7]
add eax, eax
push 0xa746fb22
nop
and dh, byte [ebx]
int1
inc ebx
and ecx, edx
clc
fst dword [edi + 0x2f]
aam 0x44
and bh, byte [ecx + 7]
add eax, eax
je 0x154247f
sti
inc esi
cmpsd dword [esi], dword es:[edi]
nop
mov edi, 0x2143f132
sal esp, 1
fst dword [edi + 0x2f]
aam 0xde
and edi, dword [ecx + 7]
add eax, eax
inc eax
and bh, bl
inc esi
cmpsd dword [esi], dword es:[edi]
nop
cmp eax, 0x2143f132
ror esp, 1
fst dword [edi + 0x2f]
aam 0x50
and edi, dword [ecx + 7]
add eax, eax
dec eax
and bh, bl
inc esi
cmpsd dword [esi], dword es:[edi]
nop
mov ebx, 0x2143f13d
rol esp, 1
fst dword [edi - 0x3d]
mov eax, 0x152a5012
invalid
int1
inc ebx
and ecx, edx
hlt
int3