Function at 0x4104fb
Capabilities:
Encode data using xor

Disassembly:
add al, 0xcb
push ebp
ja 0x410548
test dword [ebp + 0x3f25b42d], esi
cdq
insd dword es:[edi], dx
inc ecx
add bl, ah
leave
add dword [ecx], edx
push es
push ss
daa
or esi, dword [0x47001e2f]
add al, 0x97
push ebp
ja 0x410564
test dword [ebp + 0x3f25b42d], esi
cdq
insd dword es:[edi], dx
inc ecx
pop edi
push edx
sbb al, cl
mov dh, 0x67
sahf
sub al, 0x5d
jecxz 0x41050b
add dword [ecx], edx
inc edx
add al, 0xd2
push ebp
ja 0x410580
xchg esi, eax
and esi, dword [ebx]
add bl, ah
lodsd eax, dword [esi]
add dl, byte [ecx]
inc ebx
add al, 0xb8
push ebp
ja 0x41058e
xchg esi, eax
and esi, dword [ebx]
enter 0x67b6, 0xffffffffffffffe3
loop 0x410551
xor ecx, eax
mov dh, 0x67
jecxz 0x410530
add dl, byte [ecx]
add al, 0xb
adc dword [ebx + ecx], eax
or edx, dword [ecx + 0x4e]
push ecx
dec esi
or eax, 0xca044200
push ebp
ja 0x4105a4
cmp eax, 0xe300332e
in eax, 2
adc dword [edx + 4], eax
mov ebp, 0x6f487755
inc edx
add al, 0xbd
push ebp
ja 0x4105b2
outsd dx, dword [esi]
xor esi, dword [ebx]
add bl, ah
mov eax, 0x4421102
rcl byte [ebp + 0x77]
dec eax
outsd dx, dword [esi]
xor al, 0x33
add bl, ah
scasb al, byte es:[edi]
add dl, byte [ecx]
inc ebx
add al, 0xa2
push ebp
ja 0x4105ce
outsd dx, dword [esi]
xor al, 0x33
enter 0x67b6, 0xffffffffffffffe3
jecxz 0x410591
add dl, byte [ecx]
add dword [0x55c90442], ecx
adc dword [ecx], eax
or eax, 0x55c90442
ja 0x4105e0
je 0x4105d4
xor eax, dword [eax]
jecxz 0x41058e
add dl, byte [ecx]
add dword [ebx], ecx
inc edx
push es
xchg edi, eax
push ebp
ja 0x4105f0
in al, dx
cmp dh, byte [ebx]
add bl, ah
add dword [ebx], eax
adc dword [ecx + 0x5a224f], eax
dec edi
and bl, byte [edx]
inc ebx
add eax, 0x4877559f
rol dword [edi + 0x33], 1
xor dword [ebx - 0x73], eax
jecxz 0x41057d
add dl, byte [ecx]
add dword [0x55b10442], ecx
ja 0x410616
jno 0x410622
xor eax, dword [eax]
jecxz 0x41058f
mov ebx, 0x16011102
add dl, byte [ecx]
add dword [esi], edx
adc dword [ecx], eax
push ss
inc edx
add al, 0xc3
push ebp
ja 0x410626
sub dword [esi + 0x33], ebp
add bl, ah
int1
xor eax, dword [eax]
jecxz 0x4105d5
add dl, byte [ecx]
inc edx
add al, 0xd9
push ebp
ja 0x410634
pop ss
test byte [ebx], dh
add bl, ah
mov ebp, 0x6431102
jecxz 0x4105af
add dl, byte [ecx]
inc ebx
push es
popfd
push ebp
ja 0x410642
pop ss
test byte [ebx], dh
clc
inc esi
and ah, bl
mov byte [edx], 0x11
inc edx
add al, 0xbd
push ebp
ja 0x410652
adc al, 0x85
xor eax, dword [eax]
jecxz 0x4105d3
add dl, byte [ecx]
inc ebx
add al, 0xc8
push ebp
ja 0x410660
adc al, 0x85
xor ecx, eax
mov dh, 0x67
jecxz 0x410618
add dl, byte [ecx]
inc ebx
add dh, dl
push ebp
ja 0x410670
pop ss
test byte [ebx], dh
enter 0x67b6, 0xffffffffffffffe3
add dl, byte [ecx]
add cl, byte [esi + 0xd]
add byte [edx + 4], al
movsb byte es:[edi], byte [esi]
or eax, 0xa4044200
push ebp
ja 0x410684
invalid
add dl, byte [ecx]
add dword [0x559a0542], ecx
ja 0x410694
add eax, 0x4877559a
and al, 0xc7
add bl, ah
test al, 2
adc dword [edx + 4], eax
int 0x55
add dl, byte [ecx]
inc edx
add al, 0xcd
push ebp
ja 0x4106a2
push 0xe30036d7
stosd dword es:[edi], eax
add dl, byte [ecx]
add bl, byte [edx + 0x46]
add byte [ebx + 5], al
xchg ebp, eax
push ebp
ja 0x4106b4
push 0xf7e636d7
push ebp
jecxz 0x410647
not dword [ebp - 0x1d]
rol dword [edx], cl
adc dword [eax], ecx
pop edx
sbb dl, byte [esi]
add dl, byte [ecx]
or byte [edx + 0x1a], bl
push ss
dec ecx
xor eax, 0x512613
inc ebx
add al, 0xa0
push ebp
ja 0x4106ce
and dword [ecx - 0x78e486c9], edi
jecxz 0x410622
add dword [ecx], edx
movsb byte es:[edi], byte [esi]
pop eax
add byte [eax - 0x496ef1e0], dl
sbb byte [edx + 2], bh
and byte [esi], cl
xchg ecx, eax
mov dh, 0x18
jp 0x41069d
out 0xc7, eax
push edi
add byte [eax], al
jecxz 0x4106ba
add edx, dword [ecx]
add dword [ecx], ecx
inc edx
add al, 0xcd
push ebp
jecxz 0x4106d8
add edx, dword [ecx]
add al, 0xd
adc eax, 0x43001654