Function at 0x4a1101
Capabilities:
Packed with generic packer

Disassembly:
add esp, 8
mov al, byte [edi + 0x16]
dec eax
jno 0x4cb907
jo 0x48fbcf
pop ebp
ret
jmp dword [esi]
insd dword es:[edi], dx
invalid
and eax, 0x20e7c0ea
lea esp, [esp + 4]
jne 0x4bee85
je 0x4a1111
cpuid
nop
ret
mov cx, word [esi + 0xbc]
mov eax, ecx
add ebp, 0
jno 0x4a1123
nop
cpuid
ret
jno 0x4bee4e
invalid
mov ebx, dword [esi + 8]
xchg dl, dh
xchg dh, dl
mov ax, word [ebp + eax]
imul word [ebp + ebx]
shl edx, 0x20
lea esi, [esi + 0xc]
mov word [ebp + ebx], ax
jmp dword [esi]
push ecx
shr ax, 0x40
call fcn.004aec95
xor dword [ebp + ebx], eax
jb 0x4bf059
jmp dword [esi]
fcom dword [edi - 5]
scasd eax, dword es:[edi]
dec ecx
add byte [eax], al
add byte [eax], al
cmp eax, 0xe4000000
dec ecx
add ch, al
pushfd
je 0x4ac6c1
dec esp
add byte [eax], cl
add byte [eax], al
dec eax
add byte [eax], al
add byte [esi - 0x4e], ch
dec esp
add bl, ah
cwde
dec edx
add byte [0x40ecc034], ah
shr ah, 0x40
mov cl, bl
xchg ch, dl
xchg dl, ch
shr word [edi], cl
jne 0x49dd8d
shr al, 0x40
je 0x4ac6bd
or eax, 0xca840f23
push ss
je 0x49dd8d
invalid
fimul dword [ebx]
mov ecx, dword [eax]
jne 0x4a500f
je 0x4ac6d2
int1
mov ch, 0xd4
je 0x4a500f
xor eax, 0x1d448853
add bh, bh
push cs
loope 0x4ac6a4
out dx, eax
inc eax
shr bx, 0x40
mov eax, dword [esi + 4]
ja 0x4a3652
push ebx
pop ebx
jbe 0x4ac6f9
add byte [ebx], al
scasd eax, dword es:[edi]
jbe 0x4a3652
fsub dword [edi - 0x25792c7a]
out dx, al
or al, 0xf
add byte [ebx - 0x380000dc], 0x78
shr edi, 0x40
mov ebx, dword [ebp + 0x44]
shl dh, 0x20
mov eax, dword [esi + 4]
xchg edx, esi
xchg esi, edx
shr bl, 0x40
mov edx, dword [esi + 8]
shl di, 0x20
push 0x49a342
ret
invalid
mov ebx, dword [esi + 8]
mov eax, dword [ebp + eax]
xchg bx, ax
xchg bx, ax
lea esi, [esi + 0xc]
add dx, 0
ja 0x4ab4ea
jbe 0x4bc4ee
dec edi
cmp al, 0x43
jnp 0x4bc4fe
jbe 0x4ab4ea
xchg dh, dh
out dx, eax
invalid
xor al, 0x99
push dword [ecx*2 + 0x665dec89]
shl ebx, 0x20
lea esi, [esi + 0xc]
stc
xor word [ebp + ebx], ax
jb 0x4c0a23
jmp dword [esi]
jae 0x4bcf31
mov dx, dx
mov di, di
mov eax, dword [esi + 4]
ja 0x4bc4cf
jbe 0x4bcf2b
cmp eax, 0x9e860fba
cmc
invalid
jbe 0x4bc4cf
ficom dword [esi]
hlt
and eax, 0xffff
jb 0x49ee9c
shl ecx, 6
shr eax, 0xa
and ecx, 0xffff
jb 0x49eea3
or eax, ecx
jb 0x4ba1e7
xor eax, 0xd5bd
jb 0x4ba1ef
jmp 0x4beee7
cmp al, 2
jne 0x4beed3
je 0x4bee93
cpuid
ret
mov cx, word [esi + 0xbc]
mov eax, ecx
and eax, 0xffff
jb 0x4ac67a
shl ecx, 4
shr eax, 0xc
and ecx, 0xffff
jb 0x4c5460
or eax, ecx
jb 0x4c43cd
xor eax, 0xd59f
jb 0x4c43d5
jmp 0x4beee7
neg al
sbb eax, eax
and eax, 0x7d
jb 0x4bcf16
add eax, 4
push 1
push esi
mov word [esi + 6], ax
mov cx, cx
call fcn.004b48dd
lea esi, [esi]
mov edi, dword [ebp + 8]
xor eax, eax
jb 0x4bcf29
jno 0x48fbb9
jo 0x4bef10
int3
jo 0x48fbb9
fdivr dword [edx - 0x73]
and al, 4
pop edi
mov word [ebp + 0x30], ax
mov esi, esi
jmp dword [esi]
add eax, 0x4b574b0b
add byte [eax], al
popal
add byte [eax + 0x34], al
add byte [ecx], ah
add byte [eax], al
mov esp, 0
adc byte [eax], al
add byte [eax], al
inc eax
add byte [eax], al
xor byte [eax], al
add byte [eax], al
xchg ecx, eax
aas
dec ecx
add cl, ah
cmpsb byte [esi], byte es:[edi]
dec edx
add byte [eax + ecx*8 + 0x4a], bl
add byte [edx + 0x65], dh
dec esp
add byte [ebp + 0xa], bl
dec esp
add byte [edi], cl
mov byte [0x657258c3], al
dec esp
add byte [eax + ecx*8 + 0x4a], bl
add dl, bl
or dword [edi - 0x7411780b], eax
punpckhdq mm0, qword [eax]
push ecx
call fcn.004aec95
mov edx, dword [edi]
push 0x14
jmp 0x4c0a7b
push edx
call fcn.004a4eb1
mov eax, dword [edi]
push 1
jmp 0x4c0a87
push eax
call fcn.00491bbe
add esp, 0x18
pop edi
mov di, di
pop esi
pop ebx
mov esp, ebp
pop ebp
js 0x49a6a3
jns 0x4c0aa8
pop ecx
out dx, eax
out 0xf, eax
mov ebp, esi
wait
std
inc dword [0xfc08564]
jns 0x49a6a3
add eax, 0xfc08564
cmp ah, 0xf7
invalid
mov ax, word [ebp + eax]
jne 0x4bcf05
shl si, 0x20
je 0x4c43cf
pop es
in eax, dx
je 0x4bcf05
xor al, 0x91
out dx, al
stosd dword es:[edi], eax
mov ecx, ecx
mov eax, dword [esi + 4]
mov ebx, dword [esi + 8]
jne 0x4c43bc
je 0x4c5476
or dh, byte [eax - 0x7bf07c68]
inc eax
out dx, eax
invalid
je 0x4c43bc
cmp cl, 0x5c
jmp fcn.004b7722
cmp eax, 0xe9
add byte [eax], al
ja 0x4a98d6
jbe 0x4cb917
jmp 0x4cb90a
push 0x4b47b0
ret