Function at 0x10030551
Capabilities:
Packed with generic packer

Disassembly:
arpl word [ebx + 0x38860f87], di
aas
add al, byte [eax]
mov al, byte [0x800ffec5]
out 0x84, al
add al, byte [eax]
xor eax, 0x24448fb8
cld
jne 0x1005eaf0
shl bp, 0x20
je 0x1002d0b3
push es
stosb byte es:[edi], al
in al, 0xf1
stosb byte es:[edi], al
je 0x1005eaf0
and byte [ebx], 0x50
call edi
mov eax, dword [ebp - 8]
test eax, eax
jb 0x100203fa
jne 0x10023aa8
je 0x1002d0d6
sahf
add byte [ecx], 0xa1
fisttp qword [ebp + 0x22810f3f]
xchg edi, eax
invalid
mov eax, dword [ebp + 8]
push 0
shl ebp, 0x20
push 0
call fcn.1002721a
xor al, 0x81
mov eax, dword [ebp - 4]
mov byte [esi + 0xbb], 0
xchg ah, al
shr si, 0x40
shr dl, 0x40
xchg al, ah
push eax
xchg dx, di
xchg di, dx
jmp 0x10030539
push esi
push esi
pop esi
ja 0x1004d54a
jbe 0x10030549
in al, dx
mov ebp, ebp
sub byte [edi], cl
xchg bl, bh
iretd
jbe 0x1004d54a
xor eax, 0xba8e885c
add byte [eax], al
add byte [edi], cl
adc dword [eax + 0x70fffff5], 0xfe76e02
add byte [esi - 0x2600000b], 0x37
jle 0x1002a623
xchg bp, di
xchg di, bp
jg 0x10030579
mov eax, dword [0xba26ff00]
and ebp, ecx
ror ebx, 1
jmp dword [esi]
mov ebp, esp
mov eax, dword [0x1008df74]
push ebx
shr bp, 0x40
jmp 0x10037ccf
push esi
jmp 0x10037cd2
push edi
test eax, eax
jb 0x1002d093
jne 0x10037d0b
je 0x10037ce6
xchg ebp, eax
or ebp, eax
nop
invalid
call fcn.1002df7b
test eax, eax
jb 0x1002d09c
jne 0x10037d0b
je 0x10037d01
adc al, 0xb
lea edi, [esi + 0x665fd928]
mov ecx, ecx
pop edi
mov cx, cx
pop esi
pop ebx
pop ebp
ret
jmp 0x1002eea2
jmp 0x10039a99
push ebp
jne 0x10037cc2
push esi
pop esi
je 0x10039aaa
push esi
cwde
loope 0x10039b0d
xlatb
je 0x10037cc2
ficomp dword [edx + ebp*2]
add bl, ch
xchg esp, eax
jmp dword [esi]
pop ebp
ret
mov word [esi + 0xbc], dx
shr dl, 0x40
shl ebp, 0x20
mov cx, cx
call fcn.1002aab6
mov cl, byte [ebp + 0xb]
jmp 0x1004d563
push esi
call 0x1005434a
xor eax, 0x1c850f47
jns 0x1004d56e
sbb al, 0x79
std
push dword [esp + eax + 0xf]
mov byte [0x840fc390], al
adc byte [ecx - 3], bh
call [edx + ecx*2]
add dl, byte [eax]
add byte [eax], al
add byte [eax + eax], bh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx], ah
add byte [eax], 0
add byte [eax], al
and dword [eax], eax
add byte [eax], dl
add byte [eax], al
add byte [edx - 0x2f], dh
add al, 0x10
sbb eax, 0x4010040d
add byte [eax], al
add byte [eax + eax], cl
add byte [ecx], dl
sub al, 2
adc byte [0x3d000000], bh
add byte [eax], al
add byte [ebp + 0x4c10052a], ah
add byte [eax], al
add byte [ecx], dl
sti
add al, 0x10
jle 0x1004d562
or esp, dword [esp + eax + 0x10]
jno 0x1004d59b
add byte [eax], al
cmp byte [eax], al
add byte [eax], al
movsd dword es:[edi], dword [esi]
sub al, byte [0x5010]
add byte [eax], bh
add byte [eax], al
add byte [ebp + 0x5010052a], ah
add byte [eax], al
add byte [edx + ecx*2], bl
add dl, byte [eax]
add byte [eax], al
add byte [eax], bh
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
popal
add byte [eax + 0x40], al
add byte [ecx], ah
add byte [eax], al
adc byte [eax], al
add byte [eax], al
jb 0x1004d5cf
add byte [eax], al
and dword [eax], eax
add byte [eax], dl
add byte [eax], al
add byte [edx - 0x2f], dh
add al, 0x10
jb 0x1004d5f3
add al, 0x10
push cs
cmp al, byte [edx]
adc byte [0x24448f78], al
pop dword [esp - 4]
xchg bx, cx
mov al, al
xchg cl, bl
shl cl, 0x20
xchg bl, cl
mov si, si
shl ecx, 0x20
xchg cx, bx
mov byte [esi + 0xba], cl
jno 0x1005fdaf
jo 0x1004d634
pop esp
jno 0x1004d650
jo 0x1005fdaf
xor al, 0x83
add byte [eax], al
mov byte [ebp - 4], al
mov dh, dh
mov byte [esi + 0xba], cl
jne 0x1003051b
je 0x1005eb06
sbb eax, 0x840fd696
invalid
je 0x1003051b
and eax, 0x82c35d70
adc al, 0x8b
inc ebp
or al, al
jmp 0x1005eb58
sub edx, dword [eax - 0x1a]
push edi
call fcn.1005b2f8
mov edx, dword [ebp - 8]
push edx
call fcn.10051756
add esp, 8
mov ax, 0xc
pop edi
pop esi
pop ebx
mov esp, ebp
jmp 0x1003c332
call 0x10044446