Function at 0x401448
Capabilities:
Encode data using xor

Disassembly:
push 0x4016fc
call fcn.00401442
add byte [eax], al
add byte [eax], al
add byte [eax], al
xor byte [eax], al
add byte [eax], al
cmp byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
aaa
push ebp
mov edx, es
call 0x8488c7b2
or al, 0xaa
fst dword [ebx]
mov dl, 0xdd
imul eax, dword [eax], 0
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx + 0x66], ah
insb byte es:[edi], dx
imul esp, dword [edi + 0x68], 0x74
add byte [eax], al
dec esp
xor dword [eax], eax
or edx, dword [ecx]
jle 0x401491
int3
lcall 0x7091, 0x4c71d75d
xlatb
fucom st(7)
mov esp, dword [ebx + 0x44]
les ecx, [edi + esi*2 - 0x6e]
mov dh, 0x11
push ebx
inc ebp
xchg ecx, eax
sub eax, 0x90a4957a
sal al, cl
cmp cl, byte [edi - 0x53]
xor ebx, dword [ecx - 0x48ee309a]
or al, 0
stosb byte es:[edi], al
add byte [eax - 0x2d], ah
xchg ebx, 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], al
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], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
adc dword [edx], eax
add byte [eax], al
dec ecx
add byte [eax], al
add byte [eax], al
or eax, 0x72684300
outsd dx, dword [esi]
insd dword es:[edi], dx
popal
je 0x40156b
jae 0x401561
outsd dx, dword [esi]
jo 0x40157a
add byte [0x47001101], cl
outsb dx, byte gs:[esi]
outsd dx, dword [esi]
jne 0x401575
insb byte es:[edi], dx
insb byte es:[edi], dx
and byte [eax + 0x65], ch
jb 0x401583
je 0x401585
je 0x401518
sbb dword [ecx], eax
add byte [edx], al
and edi, edi
invalid
add esp, dword [0x3000000]
push es
add byte [esi + 0x6f], ah
insb byte es:[edi], dx
insb byte es:[edi], dx
jb 0x401570
add al, byte [ecx + eax*2]
push es
test byte [esp + edi*8], 3
push esi
or dword [ebx], ecx
add eax, 0x62656b00
add al, 0xfc
add edx, dword [esi + 9]
or eax, dword [0x62656b00]
bound edi, qword [ecx]
adc al, byte [edx]
add bh, bh
add ebp, dword [ebx]
add byte [eax], al
add byte [esi], al
pop es
add byte [ecx + 0x6e], ah
popal
outsb dx, byte [esi]
imul esp, dword [ecx + 0x73], 0xa010400
add byte [esi + 0x65], cl
outsd dx, dword [esi]
je 0x401605
jb 0x40160b
jae 0x401618
jae 0x4015a6
add al, 0xdc
add al, 0x6f
add ch, cl
or byte [ecx], ch
or al, 0x11
add eax, dword [eax]
inc dword [ebx]
push ds
add byte [eax], al
add byte [edi], al
or al, byte [eax]
inc ebp
insd dword es:[edi], dx
jo 0x40162b
arpl word gs:[ecx + ebp*2 + 0x74], si
add byte gs:[ebx], cl
pop es
add al, 0
add byte [eax], cl
cwde
pop es
add byte [eax], al
inc dword [ebx]
xor dword [eax], eax
add byte [eax], al
or byte [edx], cl
add byte [ebx + 0x61], ah
jb 0x401640
popal
jp 0x40165a
insb byte es:[edi], dx
imul esp, dword [ebx], 0xd0105
inc ebx
outsd dx, dword [esi]
jb 0x40165d
outsd dx, dword [esi]
jb 0x401655
popal
insb byte es:[edi], dx
imul esi, dword [ebx + 0x74], 0x23050073
or dword [ebp + 0x6703db0c], ebx
push es
adc al, byte [eax + eax]
inc dword [ebx]
sub byte [eax], al
add byte [eax], al
or dword [edx], ecx
add byte [ecx + 0x6c], cl
insb byte es:[edi], dx
imul ebp, dword [ebp + 0x69], 0x65746174
add byte [0x6b000401], al
popal
je 0x401692
add dword [eax + eax], eax
imul esp, dword [ecx + 0x74], 0x73
add byte [0x7050429], al
test dword [edx], eax
add dl, byte cs:[edx]
add eax, 0x2b03ff00
add bh, bh
add ebp, dword [ebx]
add byte [eax], al
add byte [ebx], cl
pop es
add byte [ecx + 0x62], ah
bound esp, qword [ecx + 0x74]
imul esp, dword [ebp], 0xa0105
inc ecx
jbe 0x4016b3
add byte [ecx + 0x76], al
outsd dx, dword [esi]
popal
jb 0x4016b2
je 0x4016b0
add byte [0xb390394], al
sub al, 5
test dword [edx], ecx
adc al, byte [esi]
add bh, bh
add esp, dword [eax + eax]
and al, 0
add byte [eax], al
add al, byte [esi]
add byte [edx], al
push es
add byte [eax + 0x69], cl
jo 0x4016ca
jb 0x40169e
add byte [edi], dl
add esp, dword [eax + 5]
add byte [eax], al
add al, 0x8e
add al, byte [eax]
add byte [0x2f9], al
push es
jmp 0x40167b
add byte [eax], al
inc dword [ebx]
push ds
add byte [eax], al
add byte [ebx + ecx], al
add byte [ecx + 0x6e], ah
jb 0x4016fa
arpl word gs:[ecx + 0x75], bp
insd dword es:[edi], dx
jae 0x401692
push ss
add al, 0x69
push es
xchg ebx, eax
pop es
mov edi, 0xff09200b
add ebp, dword [edi]
das
add byte [eax], al
add byte [0x67410007], al
jne 0x40171d
imul esp, dword [ebx], 0xe0101
inc ecx
add byte [ecx + 0x72], al
jb 0x401728
je 0x40171a
jb 0x401720
jb 0x401720
arpl word gs:[ecx + 0x73], si
imul esi, dword [ebx + 0x37], 0x18b0500
dec ecx
or byte [ecx + 4], ch
adc eax, 0x1207
add byte [eax], al
inc dword [ebx]
sub al, byte [eax]
add byte [eax], al
or cl, byte [eax + eax]
inc ebx
popal
jne 0x40174d
imul ebp, dword [edi + 0x6e], 0x73656972
xor al, byte [eax]
pop ss
add edx, ebp
push es
add byte [eax], al
add al, 0x94
add byte [eax], al
add byte [0xae3], al
push es
inc esi
add eax, dword [eax]
add bh, bh
add al, byte [eax + eax]
add byte [esi + 0x42], dl
add byte [eax], al
push esi
inc edx
xor eax, 0x2a263621
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 [esi], bh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
or al, byte [eax]
add byte [edx], cl
add byte [ecx], cl
add al, 0
or dword [eax + eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], dl
sbb al, byte [eax]
clc
add byte [eax], al
add byte [eax], al
adc byte [edx], bl
inc eax
add byte [esi], dh
clc
lock add dword [eax], eax
invalid
push ss
inc eax
add byte [esp + edx + 0x40], dl
add byte [eax], bh
add byte [eax], al
add dword [eax], 0x8a0000
add byte [eax], al
mov eax, dword [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], al
add byte [eax], al
add byte [eax], al
push edi
popal
je 0x4017dd
jb 0x4017dd
outsd dx, dword [esi]
insb byte es:[edi], dx
add byte [ebp + 0x6e], dl
insd dword es:[edi], dx
popal
jb 0x4017f6
push 0x61000061
insb byte es:[edi], dx
imul esp, dword [edi + 0x68], 0x1000074
add byte [eax + eax], al
pop esp
xor al, 0x40
add byte [eax], al
add byte [eax], al
add bh, bh
dec ecx
jg 0x4017e0
pop es
add byte [eax], al
add byte [eax + ecx - 0x7b], dh
add byte [edi], al
add byte [eax], al
add byte [edx + ecx + 0x70085], bh
add byte [eax], al
push 0x7007f49
jg 0x4017f8
pop es
add byte [eax], al
add byte [eax + ecx + 0x70085], al
add byte [eax], al
adc al, 0xb
test dword [eax], eax
pop es
add byte [eax], al
add byte [eax + esi*2 - 0x7b], cl
add byte [edi], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
add byte [eax], al
add byte [eax + 0x72], ah
test dword [eax], eax
pop es
add byte [eax], al
add byte [eax], dh
xor dword [ebp + 0x700], eax
add byte [eax + 0x700856d], dl
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
add byte [eax], al
add ah, bh
pushal
test dword [eax], eax
pop es
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
add byte [eax], al
add byte [eax + esi + 0x70085], cl
add byte [eax], al
loopne 0x40188e
test dword [eax], eax
pop es
add byte [eax], al
add byte [edi + edx*2 - 0x7b], ch
add byte [edi], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
pop es
add byte [eax], al
add byte [eax + 0x53], ch
test dword [eax], eax
pop es
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
add byte [eax], al
add byte [ebp + esi*2 + 0x70085], bl
add byte [eax], al
add byte [eax], al
add byte [eax], al
pop es
test dword [eax], eax
pop es
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
add byte [eax], al
add byte [eax + 0x67], bl
test dword [eax], eax
pop es
add byte [eax], al
add byte [eax + edx*2 + 0x70085], al
add byte [eax], al
nop
push ebp
test dword [eax], eax
pop es
add byte [eax], al
add byte [eax + 0x7008558], ah
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [edi], al
add byte [eax], al
add byte [ecx + esi*2 + 0x500085], dl
add byte [eax], al
xor eax, dword [ecx + eax*8 + 0x4145ebd8]
dec esp
lodsb al, byte [esi]
jge 0x401870
lodsb al, byte [esi]
dec ecx
and ebp, dword [esi + 0xe4]
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], al
add byte [eax], al
add byte [eax], al
push es
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], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
or byte [edi], 0xb
add byte [eax], al
add byte [eax], al
add byte [eax + 0x4c00405b], cl
add byte [eax], al
add byte [eax], dl
add byte [eax], al
adc dword [esi - 7], edi
lcall 0x7091, 0x4c71d75d
xlatb
fucom st(7)
mov esp, dword [ebx + 0x44]
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], al
add byte [eax], al
add dword [eax], eax
add byte [eax], al
nop
add eax, 0
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], al
add byte [eax], al
add byte [eax], al
push 2
add byte [eax], al
add byte [eax], al
add byte [eax], al
nop
adc al, 0x40
add byte [eax + eax + 0x500000], bl
add byte [eax], al
dec esp
push eax
lodsd eax, dword [esi]
in eax, dx
jns 0x4019f3
sub dword [edx - 0x72], eax
mov edx, 0xe43aa24a
xor byte [eax], dl
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], al
add byte [edx], al
add byte [eax], al
add byte [eax + 5], al
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], al
add byte [eax], al
add byte [eax], al
add byte [ecx + 2], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
fcom dword [esi + 0x40]
add ah, ch
add byte [eax], al
add byte [eax], dl
add byte [eax], al
scasd eax, dword es:[edi]
dec ebp
mov dword [edx + 1], esi
pop esp
adc byte [edi - 0x7e], al
push edx
add al, 0x54
mov esi, 0xa74cc
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], al
add byte [ebx], al
add byte [eax], al
add byte [eax + 5], al
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], al
add byte [eax], al
add byte [eax], al
add byte [ecx + 2], ch
add byte [eax], al
add byte [eax], al
add byte [eax], al
sbb al, 0x59
inc eax
add byte [ecx + eax], bh
add byte [eax], al
hlt