Function at 0x45e489
Capabilities:
Packed with generic packer

Disassembly:
add byte [0x756e654d], al
jae 0x45e430
add byte [ebp + ebx*8 + 0x45], bl
add al, ch
push ds
push es
clc
xor eax, dword [esi]
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add eax, dword [eax]
or eax, dword [ecx + 0x75]
je 0x45e4b7
dec eax
outsd dx, dword [esi]
je 0x45e4b7
invalid
jns 0x45e4c2
pop esp
fld qword [ebp]
or byte [esi + eax*2], dh
add byte [eax], bl
xor al, 0x46
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 al, 0
adc dword [ecx + 0x75], eax
je 0x45e4dd
dec esp
imul ebp, dword [esi + 0x65], 0x75646552
arpl word [ecx + ebp*2 + 0x6f], si
outsb dx, byte [esi]
add byte [eax], dl
inc eax
add byte [eax + eax], bl
jmp [eax]
xor al, 0x46
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 eax, 0x75410900
je 0x45e509
dec ebp
jb 0x45e505
sub byte gs:[edx + 0x41], dh
add byte [eax], dh
add byte [eax], al
push dword [eax + 0x33]
inc esi
add byte [eax + 0x2c], ch
inc esi
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x42080006], al
push es
add byte [eax], cl
inc edx
imul eax, dword [ecx + ebp*2 + 0x4d], 0x7c65646f
rol byte [ebp], 0x48
add byte [eax], al
dec dword [edi + ebp + 0x10046]
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
pop es
add byte [esi], al
jl 0x45e484
inc ebp
add byte [eax], cl
add bh, bh
mov word [edi], gs
inc esi
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x49060007], al
dec ecx
insd dword es:[edi], dx
popal
jae 0x45e4e4
adc byte [eax], al
inc eax
add byte [eax], al
call dword [eax + 0x2e]
inc 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
or byte [eax], al
or dword [edi + 0x77], ecx
outsb dx, byte [esi]
jb 0x45e548
jb 0x45e567
popal
ja 0x45e508
adc byte [eax], al
inc ecx
add byte [eax], al
inc dword [ebx + esi + 0x10046]
add byte [eax], al
add byte [eax], al
add byte [eax + 1], al
inc eax
add byte [ecx], al
add bh, bh
test byte [ebx], dh
inc esi
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], 0
add byte [eax], al
or dword [eax], eax
push cs
push eax
popal
jb 0x45e58b
outsb dx, byte [esi]
je 0x45e56b
imul eax, dword [ecx + ebp*2 + 0x4d], 0x6865646f
fild dword [ebp]
push eax
add byte [eax], al
call dword [eax]
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
or al, byte [eax]
or byte [edi + 0x6e], cl
dec edi
outsb dx, byte [esi]
inc ebx
push 0x65676e61
nop
pop eax
in eax, 0x45
add byte [ebx], al
andps xmm2, xmmword [eax + 0x6f]
outsd dx, dword [esi]
jo 0x45e5d4
jo 0x45e5a2
insb byte es:[edi], dx
imul esp, dword [edi + 0x6e], 0x746e656d
add dword [eax], eax
outsb dx, byte [esi]
je 0x45e56b
add byte [eax], al
add byte [eax], al
add al, byte [eax]
add byte [eax], al
push esp
in eax, 0x45
add byte [eax], al
add byte [edx], al
add byte [eax], al
add byte [ebp + 0x45], dl
add byte [esi], al
jo 0x45e5da
dec esp
je 0x45e585
jo 0x45e5e1
push edx
imul esp, dword [edi + 0x68], 0x61700874
or byte [eax + 0x61], dh
inc ebx
outsb dx, byte gs:[esi]
je 0x45e5f2
jb 0x45e594
dec ebp
outsb dx, byte gs:[esi]
jne 0x45e607
cwde
in eax, 0x45
add byte [ebx], al
or al, 0x54
push esp
jb 0x45e5ff
popal
arpl word [ebx + 0x42], bp
jne 0x45e617
je 0x45e618
je 0x45e614
outsd dx, dword [esi]
outsb dx, byte [esi]
add dword [eax], eax
add byte [eax], al
add byte [ecx], al
add byte [eax], al
add byte [ebp + 0x740d0045], dl
bound edx, qword [edx + 0x69]
add byte [eax], al
xchg esp, eax
in eax, 0x45
add byte [0x69526274], cl
push 0x74754274
je 0x45e62f
outsb dx, byte [esi]
or al, 0x74
bound ecx, qword [ebp + 0x66]
je 0x45e60b
jne 0x45e63f
je 0x45e63c
outsd dx, dword [esi]
outsb dx, byte [esi]
add eax, 0x756e654d
jae 0x45e5ad
fsub st(5)
inc ebp
in eax, 0x45
add byte [ebx], al
andps xmm1, xmmword [ebp + 0x65]
outsb dx, byte [esi]
push esp
dec ebp
outsb dx, byte gs:[esi]
jne 0x45e621
outsb dx, byte [esi]
imul ebp, dword [ebp + 0x61], 0x6e6f6974
jae 0x45e5eb
add byte [eax], al
add byte [eax], al
add al, 0
add byte [eax], al
add byte [eax + eax], al
add byte [eax], al
aam 0xe5
inc ebp
add byte [0x654c616d], cl
je 0x45e652
outsd dx, dword [esi]
push edx
imul esp, dword [edi + 0x68], 0x616d0d74
push edx
imul esp, dword [edi + 0x68], 0x4c6f5474
je 0x45e661
outsd dx, dword [esi]
dec esp
je 0x45e620
insd dword es:[edi], dx
popal
push esp
outsd dx, dword [esi]
jo 0x45e66d
push esp
outsd dx, dword [esi]
inc edx
outsd dx, dword [esi]
je 0x45e692
outsd dx, dword [esi]
insd dword es:[edi], dx
or eax, 0x6f42616d
insd dword es:[edi], dx
popal
inc edx
outsd dx, dword [esi]
je 0x45e69b
outsd dx, dword [esi]
insd dword es:[edi], dx
push esp
outsd dx, dword [esi]
push esp
outsd dx, dword [esi]
jo 0x45e635
insd dword es:[edi], dx
popal
dec esi
outsd dx, dword [esi]
outsb dx, byte [esi]
add eax, 0x756e654d
jae 0x45e5cc
inc eax
out 0x45, al
add byte [esi], al
push cs
push esp
dec ebp
outsb dx, byte gs:[esi]
jne 0x45e689
outsb dx, byte [esi]
imul ebp, dword [ebp + 0x61], 0x6e6f6974
add esp, edx
in eax, 0x45
add byte [ebp - 0x195bffc0], cl
inc ebp
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 al, bh
out 0x45, 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 al, ch
arpl word [eax], sp
push es
js 0x45e67e
add byte [eax], al
and dl, 0x45
add byte [eax], cl
cmp byte [edx], al
push esp
xor eax, 0x315c0040
inc edx
add byte [ebp + esi + 0x40], bl
inc eax
add byte [eax + 0x35], dl
inc eax
add byte [eax - 0x4bffbfce], bl
xor al, byte [eax]
pop esp
cmp eax, dword [esi]
sub byte [ecx + 0x34100041], 0x42
add byte [edx + esi + 0x3b5c0040], dh
inc esi
add byte [eax + 0x100041a9], al
xor al, 0x42
add byte [eax + ebp*4 + 0x2f2c0041], bl
inc esi
add al, cl
das
inc esi
add al, bh
xor al, 0x42
add al, dh
xor eax, 0x38200042
inc edx
add byte [eax], ah
cmp byte [edx], al
invalid