Function at 0x470bb3
Capabilities:
Packed with generic packer

Disassembly:
adc byte [eax], al
lock add dword [eax], eax
add byte [edi], al
add al, al
or al, byte [edi]
aam 1
add byte [eax], al
add byte [eax], al
cmove ebp, dword [ecx + 0x73]
imul eax, dword [edx + 0x69], 0x74
insd dword es:[edi], dx
popal
jo 0x470c1b
insd dword es:[edi], dx
popal
fadd dword gs:[bx + di]
add byte [eax], al
add dword [eax], eax
rcpps xmm4, xmmword [ebp + 0x6c]
arpl word gs:[esp + eax*2 + 0x69], si
jae 0x470c52
dec esp
popal
bound esp, qword [ebp + 0x6c]
fadd qword [ecx]
add byte [eax], al
add dword [eax], eax
or dword [eax + 0x61], edx
je 0x470c5f
dec esp
popal
bound esp, qword [ebp + 0x6c]
loopne 0x470bff
add byte [eax], al
add al, byte [eax]
or byte [eax + 0x61], dl
add byte [edx], al
add byte [eax], cl
push eax
popal
je 0x470c6f
inc ebp
imul esi, dword fs:[esp + 1], 0x30000
or al, 0x42
jb 0x470c84
ja 0x470c8a
inc edx
jne 0x470c8f
je 0x470c8c
outsb dx, byte [esi]
call 0x3470c24
add byte [eax], cl
dec edi
dec ebx
inc edx
jne 0x470c9e
je 0x470c9b
outsb dx, byte [esi]
in al, dx
add dword [eax], eax
add byte [ebx], al
add byte [ebx + eax*2], cl
popal
outsb dx, byte [esi]
arpl word [ebp + 0x6c], sp
inc edx
jne 0x470cb1
je 0x470cae
outsb dx, byte [esi]
add al, byte [eax]
adc eax, 0x470d9000
add byte [esi], cl
inc esi
outsd dx, dword [esi]
jb 0x470cba
inc ebx
insb byte es:[edi], dx
outsd dx, dword [esi]
jae 0x470cb7
invalid
push ecx
jne 0x470cba
jb 0x470cd0
sbb byte [eax], al
pushal
push cs
inc edi
add byte [ecx], dl
inc edx
jb 0x470cd0
ja 0x470cd6
inc edx
jne 0x470cdb
je 0x470cd8
outsb dx, byte [esi]
inc ebx
insb byte es:[edi], dx
imul esp, dword [ebx + 0x6b], 0x654e540c
ja 0x470cb9
or al, 0x54
dec esi
ja 0x470cb9
imul esi, dword [ebx + 0x6b], 0x6d726f46
add al, 0
adc ch, bl
inc ebp
add byte [esi + 0x45], ah
inc ebp
add byte [eax], ah
cmp eax, dword [ecx]
mov esp, 0x8b0045f4
inc ebp
add byte [ebx + 0x540c07c0], cl
rol byte [edi], 0xc
push esp
dec esi
ja 0x470cdb
imul esi, dword [ebx + 0x6b], 0x6d726f46
outsd dx, dword [esi]
jb 0x470d0b
jo 0x470ca9
inc edi
add byte [eax], cl
sub dword [ebx], ecx
cmp al, byte [eax]
pop es
dec esi
ja 0x470cf1
imul esi, dword [ebx + 0x6b], 0xc08b0000
jae 0x470d1b
add byte [eax], al
mov eax, eax
add byte [ebx - 0x1374aa40], cl
push ebp
mov ebp, esp
add esp, 0xffffffec
in al, dx
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x14], ebx
mov ebx, ecx
mov edi, edx
mov esi, eax
xor eax, eax
push ebp
push 0x470bfa
or eax, dword [edi]
push dword fs:[eax]
mov dword fs:[eax], esp
mov ecx, dword [0x4cf4b0]
mov dl, 1
mov eax, 0x470970
call 0x4e0cf7
mov dword [ebp - 8], eax
xor eax, eax
and byte [ebx + 0x4cf4b00d], cl
mov al, 0xf4
dec esp
add byte [edx + 0x970b801], dh
inc edi
add al, ch
or al, 0
pop es
add byte [ecx - 0x3fcc07bb], cl
push ebp
push 0x470bd5
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
add eax, 0x1f0
mov edx, edi
call fcn.00473623
lea eax, [ebp - 0xc]
push eax
lea edx, [ebp - 0x14]
mov eax, esi
call fcn.0047701d
mov eax, dword [ebp - 0x14]
in al, dx
mov dword [ebp - 0x10], eax
lea edx, [ebp - 0x10]
xor ecx, ecx
mov al, 0x91
call 0x4d0e77
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
inc ebp
clc
mov eax, dword [eax + 0x1d8]
call 0x52daa0
mov edx, dword [ebx]
mov eax, dword [ebp - 8]
clc
mov eax, dword [eax + 0x1e0]
call 0x52dab0
push 0
call fcn.0047634f
mov eax, dword [ebp - 8]
call 0x528f33
dec eax
sete byte [ebp - 1]
cmp byte [ebp - 1], 0
inc dword [eax]
je 0x470d7b
lea edx, [ebp - 0xc]
mov eax, dword [ebp - 8]
call 0x4e0e81
mov edx, dword [ebp - 0xc]
mov eax, ebx
call fcn.00473693
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x470bdc
fmul qword [ebx]
inc edi
add byte [ebx + 0x20e8f845], cl
and byte [eax], al
add bl, al