Function at 0x54b348
Capabilities:
Encode data using xor

Disassembly:
jo 0x54aee3
dec edi
add ah, bh
ror dword [esi], 0xbc
inc ecx
add byte [eax + esi*8 - 0x4413ffb9], bl
dec esi
add byte [eax], bh
test al, 0x4e
add ah, ch
mov ebx, 0xa838004e
dec esi
add ah, dh
outsb dx, byte [esi]
dec esi
add byte [eax + esi*4 - 0x55dfffbe], dl
inc edx
add byte [eax], bl
stosb byte es:[edi], al
inc edx
add byte [eax + esi*4 - 0x3c1fffbe], bl
push esp
add byte [eax - 0x51], bh
inc edx
add byte [edi + eax + 0xda0004f], dl
dec edi
add ah, ch
or al, 0x4f
add byte [eax - 0x33ffb167], ch
jp 0x54af69
add al, dl
jp 0x54af6d
add byte [eax + 0x60], dh
dec esi
add byte [ecx + eax + 0x1bc004f], bl
dec edi
add ah, dl
std
dec esi
add byte [edi + ebx*2 - 0x6193ffb2], dh
dec esi
add byte [eax + 0x8004e9e], bl
in al, 0x4e
add ah, bl
outsb dx, byte [esi]
dec esi
add byte [edx + 0x4e], cl
add byte [eax + esi*2 + 0x4e], ah
add byte [edi + ebx + 0x733c004f], ch
dec esi
add byte [eax + 0x30004e71], ch
rcl byte [eax + eax - 0x50], cl
pop edi
dec esi
add byte [edi + ebx*4], bl
dec esi
add ah, bh
invalid
dec dword [esi]
xchg esp, eax
clc
dec esi
add byte [eax], ah
dec dword [esi]
mov al, 0xa8
dec esi
add byte [esp + esi*4], cl
dec esi
add byte [ebx + eax*8 - 0x23cfffb2], dl
push esp
add byte [eax + eax*8], dh
dec esi
add ah, ah
fist dword [eax + eax + 0x2c]
les ecx, [esi]
push eax
les ecx, [esi]
in al, 0xc4
dec esi
add byte [esp + 0x47], ch
add byte [eax + edi*8], al
inc edi
add byte [eax + 0x1e], ch
dec edi
add byte [eax], ch
dec edi
add byte [ebp + edx*8 + 0x1de0004e], dl
dec edi
add byte [eax + ecx*8], ah
dec esi
add byte [eax + 0x30004efc], al
pop ds
dec edi
add al, dl
dec dword [esi]
sbb ch, ah
inc edi
add byte [ebp + 0x47], al
add al, dl
inc edi
add byte [eax - 0x1c], al
inc edi
add byte [edx + esi*8 - 0xd4fffb9], ah
inc edi
add byte [ebx + esi*8], bh
inc edi
add byte [eax - 0xd], ch
inc edi
add byte [eax], al
push 0xe490004f
inc edi
add ah, al
int1
inc edi
add byte [edx + eax*8 + 0x54], bl
add al, al
out 0x47, eax
add byte [edx + eax - 0x1a6bffb8], bh
push esp
add byte [esi + 0x2b00047], bl
dec eax
add byte [esp + ebx*8], al
push esp
add byte [eax + 0x200047f2], al
test byte [edi], 0x58
clc
inc edi
add al, ch
fcom qword [eax + eax - 0x4c]
add byte [eax], cl
mov eax, 0x47f5
add byte [eax], al
add byte [eax], al
add byte [eax + eax], cl
add byte [esi + 0x41], bh
inc ecx
add byte [eax], dl
add eax, dword [eax]
add byte [edx], cl
inc esi
inc ecx
insb byte es:[edi], dx
imul esp, dword [edi + 0x6e], 0x746e656d
add al, byte [eax]
add byte [ecx + esi], cl
inc ebp
add byte [ecx], dl
add eax, dword [eax]
add byte [ecx], cl
inc esi
push edx
popal
dec edi
outsb dx, byte [esi]
insb byte es:[edi], dx
jns 0x54b054
add byte [eax], al
je 0x54b02b
push ebp
add byte [edx], dl
add eax, dword [eax]
add byte [0x73694446], cl
popal
bound ebp, qword [ebp + 0x64]
dec ebx
imul ebp, dword [esi + 0x64], 2
nop
push ebx
add byte [ebx + eax], dl
add byte [eax], al
or eax, dword [esi + 0x43]
outsd dx, dword [esi]
insd dword es:[edi], dx
insd dword es:[edi], dx
outsd dx, dword [esi]
outsb dx, byte [esi]
inc esp
popal
je 0x54b0e2
add al, byte [eax]
add byte [eax - 0x6e], ch
push ebx
add byte [eax], bl
add eax, dword [eax]
add byte [ebx], cl
inc esi
inc edx
outsd dx, dword [esi]
jne 0x54b100
dec esp
popal
bound esp, qword [ebp + 0x6c]
add al, byte [eax]
add byte [ecx + esi], cl
inc ebp
add byte [ebx + eax], bl
add byte [eax], al
or eax, dword [esi + 0x53]
push 0x7542776f
je 0x54b121
outsd dx, dword [esi]
outsb dx, byte [esi]
add al, byte [eax]
add dword [eax - 0x49], edx
inc eax
add byte [eax], ah
add eax, dword [eax]
add byte [edx], cl
insb byte es:[edi], dx
bound ebp, qword [edi + 0x78]
push 0x6c646e61
add al, byte gs:[eax]
add dword [eax + 0x24004531], ebp
add eax, dword [eax]
add byte [ecx], al
arpl word [ebp + ecx*2 + 2], si
add byte [ecx], al
test al, 0x31
inc ebp
add byte [eax], ch
add eax, dword [eax]
add byte [ecx], al
arpl word [esp + eax*2 + 2], si
add byte [ecx], al
cmp byte [ecx + 0x32c0060], bh
add byte [eax], al
push es
dec esp
imul esi, dword [ebx + 0x74], 0x25753
add dword [eax + 0x30004531], ebp
add eax, dword [eax]
add byte [ecx], dl
dec edi
insb byte es:[edi], dx
add byte [eax], al
adc dword [edi + 0x6c], ecx
inc esp
jb 0x54b178
jo 0x54b16e
outsd dx, dword [esi]
jne 0x54b17c
je 0x54b166
popal
insb byte es:[edi], dx
jne 0x54b179
add al, byte [eax]
add cl, byte [ecx + esi]
inc ebp
add byte [ebx + eax], dh
add byte [eax], al
or dword [esi + 0x44], eax
inc esp
jb 0x54b193
jo 0x54b16a
outsd dx, dword [esi]
ja 0x54b197
add al, byte [eax]
add byte [eax], al
or dword [eax], eax
scasb al, byte es:[edi]
mov cl, 0x54
add byte [eax + eax + 0xb], cl
add ah, ah
mov cl, 0x54
add byte [ebp], cl
invalid
push ebx
mov dl, 0x54
add byte [edx], cl
sub eax, 0x54b31c00
add byte [ebx + esi*4], bl
push esp
add byte [edx], dl
mov bl, 0xff
push es
add ch, ch
in eax, dx
jmp [esp + edi*4]
mov esp, 0x201bc2b
add eax, dword [edx]
mov bl, 0xff
shl ch, 0x54
add byte [eax], cl
in eax, 0x54
add byte [esp + ebx*8 + 0x54], ah
add al, al
rcl dword [eax + eax + 0x68]
rcl dword [eax + eax - 0x10]
push esp
add byte [eax - 0x2f], ch
push esp
add al, dh
lds edx, [eax + eax + 0x10]
push esp
jae 0x54b1e4
jne 0x54b216
je 0x54b214
insd dword es:[edi], dx
inc ebx
outsd dx, dword [esi]
insd dword es:[edi], dx
bound ebp, qword [edi + 0x42]
outsd dx, dword [esi]
js 0x54b1e5
add al, ah
ret
daa
add byte [eax], dl
lds edx, [eax + eax + 7]
inc esp
jae 0x54b263
jb 0x54b260
jns 0x54b1f6
add byte [eax], al
add byte [eax], al
add byte [eax], cl
add byte [ecx], al
or byte [ebx + esi*4 + 0x54], al
add byte [eax], al
or byte [eax], al
add dword [eax], ecx
inc esp
mov bl, 0x54
add byte [eax], al
add byte [ebx + edx*2], al
insb byte es:[edi], dx
add al, byte [eax]
add al, byte [eax]
xor al, byte [eax]
pushal
invalid
js 0x54b267
js 0x54b267
add ax, word [eax]
test al, 0x31
inc ebp
add byte [eax], cl
add byte [edx], al
or byte [ebx + esi*4 + 0x54], al
add byte [eax], al
add byte [ebx + edx*2], al
insb byte es:[edi], dx
add al, byte [eax]
add bl, byte [ebx + esi + 0x45]
add byte [ecx], al
add byte [ecx], al
jae 0x54b23c
add byte [edx], al
add byte [edx], ch
add ah, bh
invalid
insb byte es:[edi], dx
add al, byte [eax]
add al, byte [eax]
add al, byte [eax]
xor eax, 0x54c1cc00
add byte [edx], cl
inc edx
jne 0x54b2e5
je 0x54b2e2
outsb dx, byte [esi]
push edx
arpl word gs:[ebx + eax], si
in al, dx
jae 0x54b2c0
add byte [eax], cl
add byte [edx], al
or byte [ebx + esi*4 + 0x54], al
add byte [eax], al
add byte [ebx + edx*2], al
insb byte es:[edi], dx
add al, byte [eax]
push eax
in al, dx
jae 0x54b2d6
add byte [ecx], al
add byte [ecx], al
add dword [edx], eax
add byte [edx], al
add byte [ebx], ch
add byte [eax + 0xb0054ca], al
push eax
popal
imul ebp, dword [esi + 0x74], 0x74747542
outsd dx, dword [esi]
outsb dx, byte [esi]
add eax, dword [eax]
add byte [eax], al
add byte [eax], al
or byte [eax], al
add dword [eax], ecx
inc esp
mov bl, 0x54
add byte [eax], al
add byte [ebx + edx*2], al
insb byte es:[edi], dx
add al, byte [eax]
add al, byte [eax]
sub al, 0
dec esp
rcl dword [eax + eax + 0xc], 0x42
jne 0x54b345
je 0x54b342
outsb dx, byte [esi]
dec eax
imul esp, dword gs:[edi + 0x68], 0xa8000374
imul esp, dword [edi + 0x68], 0xa8000374
xor dword [ebp], eax
or byte [eax], al
add dword [eax], ecx
inc esp
mov bl, 0x54
add byte [eax], al
add byte [ebx + edx*2], al
insb byte es:[edi], dx
add al, byte [eax]
add al, byte [eax]
sub dword [eax], eax
in al, 0xdb
push esp
add byte [ecx], cl
inc ebx
jb 0x54b362
popal
je 0x54b365
push edi
outsb dx, byte [esi]
add eax, dword fs:[eax]
add byte [eax], al
add byte [eax], al
or byte [eax], al
add dword [eax], ecx
inc esp
mov bl, 0x54
add byte [eax], al
add byte [ebx + edx*2], al
insb byte es:[edi], dx
add al, byte [eax]
add al, byte [eax]
daa
add al, dh
lds edx, [eax + eax + 7]
inc esi
outsd dx, dword [esi]
arpl word [ebp + 0x73], si
add eax, dword fs:[eax]
or al, 0x31
inc ebp
add byte [eax], cl
add byte [ecx], al
or byte [ebx + esi*4 + 0x54], al
add byte [eax], al
add byte [ebx + edx*2], al
insb byte es:[edi], dx
add al, byte [eax]
add al, byte [eax]
nop
dec eax
add byte [eax + sym.DatCutter.exe___xp_26Scombobox_TsCustomComboBox], dl
mov bl, 0x54
add byte [edi], al
pop es
adc byte [ebx + esi*2 + 0x43], dl
jne 0x54b3c2
je 0x54b3c0
insd dword es:[edi], dx
inc ebx
outsd dx, dword [esi]
insd dword es:[edi], dx
bound ebp, qword [edi + 0x42]
outsd dx, dword [esi]
js 0x54b32f
scasb al, byte es:[edi]
push esp
add byte [ebp + 0x47], al
add byte [eax + eax], bl
sbb al, 0
or dword [ebx + 0x43], esi
jae 0x54b3aa
outsd dx, dword [esi]
insd dword es:[edi], dx
bound ebp, qword [edi + 0x42]
outsd dx, dword [esi]
js 0x54b37c
add byte [ecx + esi], cl
inc ebp
add byte [eax], al
add eax, dword [eax]
inc dword [eax]
add eax, dword [eax]
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
str word [ebx]
inc ecx
jne 0x54b402
outsd dx, dword [esi]
inc ebx
insb byte es:[edi], dx
outsd dx, dword [esi]
jae 0x54b3f9
push ebp
jo 0x54b3a3
xor dword [ebp], eax
fld dword [edx]
add bh, bh
fld dword [edx]
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
add byte [eax], al
adc byte [eax], al
or al, 0x41
jne 0x54b428
outsd dx, dword [esi]
inc esp
jb 0x54b427
jo 0x54b3fe
outsd dx, dword [esi]
ja 0x54b42b
invalid
add byte [ebp], bl
add bh, bh
mov ah, 0x63
dec esi
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
add byte [eax], al
push dword [ebx + 0x1004e]
add byte [eax], al
add byte [eax], al
add byte [eax], al
adc dword [eax], eax
add eax, 0x67696c41
outsb dx, byte [esi]
fcomp qword [ebx + 0x63004d]
add bh, bh
and byte [eax + 0x4e], 0
pushfd
popal
dec esi
add byte [eax], al
add byte [eax], al
add byte [ebx], 0
add byte [eax], al
adc al, byte [eax]
pop es
inc ecx
outsb dx, byte [esi]
arpl word [eax + 0x6f], bp
jb 0x54b472
jae 0x54b47c
jl 0x54b427
inc ecx
inc ecx
add byte [eax], dl
add eax, dword [eax]
inc esp
rcl byte [eax + eax + 1]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x41090013], al
insb byte es:[edi], dx
imul esp, dword [edi + 0x6e], 0x746e656d
add al, 0x32
inc ebp
add byte [ebx + eax], al
add al, 3
add eax, dword [eax]
inc dword [ebx + eax]
add bh, bh
add al, 3
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax + 0x1f4], al
adc al, 0
adc dword [ecx + 0x75], eax
je 0x54b4b1
inc ebx
outsd dx, dword [esi]
insd dword es:[edi], dx
jo 0x54b4b3
je 0x54b4af
inc esp
insb byte es:[edi], dx
popal
jns 0x54b4b8
xchg edx, eax
push ebx
add byte [eax], bl
add eax, dword [eax]
call [eax]
add eax, dword [eax]
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x420a0015], al
outsd dx, dword [esi]
jne 0x54b4dc
dec esp
popal
bound esp, qword [ebp + 0x6c]
insb byte es:[edi], dx
je 0x54b44b
push ebp
add byte [edx], dl
add eax, dword [eax]
inc dword [eax]
rcl dword [eax + eax + 1]
add cl, dl
push esp
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], 0
add byte [eax], al
push ss
add byte [esp + eax*2], cl
imul esi, dword [ebx + 0x61], 0x64656c62
dec ebx
imul ebp, dword [esi + 0x64], 0x4531a8
js 0x54b4a3
add bh, bh
xor byte [ecx], al
add dh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax + 0x10], al
adc byte [eax], al
add byte [eax], al
pop ss
add byte [0x706f7244], cl
inc esp
outsd dx, dword [esi]
jo 0x54b4ff
outsd dx, dword [esi]
ja 0x54b52c
inc ebx
outsd dx, dword [esi]
jne 0x54b530
je 0x54b4c4
nop
push ebx
add byte [ebx + eax], dl
add bh, bh
adc al, 3
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
sbb byte [eax], al
or byte [ebx + 0x6b], dl
imul ebp, dword [esi + 0x44], 0x5c617461
add byte [eax + 0x53080018], al
add byte [eax], cl
push ebx
imul ebp, dword [ecx + 0x6e], 0x44
popal
je 0x54b547
pop esp
xor eax, dword [ebp]
or byte [ebx], al
add bh, bh
jo 0x54b4d9
inc edi
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x54080019], al
add byte [eax], cl
push esp
js 0x54b579
dec eax
imul ebp, dword [esi + 0x74], 0x4db880
lodsb al, byte [esi]
add byte [eax], al
invalid
dec ebp
add byte [eax + eax - 0x5cc70100], ch
dec esi
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x5405001a], al
outsd dx, dword [esi]
jne 0x54b58b
push 0x45310c
adc dword [ebx], eax
add bh, bh
cmp al, 0xd1
push esp
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [ecx], dl
add eax, dword [eax]
invalid
add byte [eax], al
add byte [eax], al
sbb eax, dword [eax]
or byte [edx + 0x65], dl
popal
dec edi
outsb dx, byte [esi]
insb byte es:[edi], dx
jns 0x54b55b
add byte [edx], al
mov dl, 0xb5
push esp
add byte [edx], al
add byte [ebx], al
jo 0x54b50b
push esp
add byte [edx], al
add byte [ebx], al
xchg esi, eax
mov bl, 0x54
add byte [edx], al
add byte [ebx], al
mov ebp, 0x20054b3
add byte [ebx], al
fnsave dword [ebx + 0x20054]
add edi, edi
mov bl, 0x54
add byte [edx], al
add byte [ebx], al
and esi, dword [esp + edx*2 + 0x3000200]
dec edi
mov ah, 0x54
add byte [edx], al
add byte [ebx], al
je 0x54b53d
push esp
add byte [edx], al
add byte [ebx], al
wait
mov ah, 0x54
add byte [edx], al
add al, byte [eax]
add ebx, dword [ebx + 0x20054b4]
add byte [ebx], al
ret