Function at 0xa9447a
Capabilities:
Execute anti-debugging instructions
Packed with generic packer
Parse pe header

Disassembly:
push eax
push word [esp]
push word [esp + 2]
shr ah, cl
mov ax, 0xb229
jmp 0xa93816
xor eax, ebx
not cx
mov si, word [esp + 1]
pop word [esp]
setg ch
jmp 0xa937ed
lea ecx, [edx*4]
not ah
mov cl, 0x81
mov eax, 0x4b4927ce
lea esp, [esp + 1]
jmp 0xa9386a
bsr esi, edi
lea esp, [esp]
mov byte [esp], bh
mov eax, 0x85bcf3bb
inc ax
jmp 0xa93a7e
shr ecx, cl
mov ecx, dword [esp]
xchg byte [esp], ah
lea eax, [edi*4]
jmp 0xa9383d
mov word [esp + 2], dx
pop si
lea esp, [esp + 2]
sub cl, 0xc
stc
sbb ax, 0x7d23
jmp 0xa93853
neg ecx
or ecx, edi
setne cl
shl si, cl
call fcn.00a9399e
mov esi, dword [esp + 0x20]
push ebx
pop cx
pop dword [esp + 0x14]
mov ax, dx
neg ecx
jmp 0xa93ae3
mov eax, esp
add esp, 4
xchg si, ax
pushal
not ecx
xchg dword [esp + 0x14], ecx
jmp 0xa93acd
lea esp, [esp]
inc esi
mov ecx, 0x1c50d062
mov dword [esp + 0x19], eax
jmp 0xa93cd6
sub esp, 0
mov word [esp + 0x14], dx
lea esp, [esp + 0xc]
xchg dword [esp + 4], eax
jmp 0xa93a9f
push dword [esp + 0x19]
add esp, 0x1c
mov al, 0x62
mov ax, 0xfe19
add esp, 0
jmp 0xa93bb7
lea eax, [edx*4]
shl eax, 0x17
xchg word [esp + 0x1d], ax
lea esi, [ebp + 0x1a8a]
jmp 0xa93b10
mov cx, word [esp + 0x1e]
bsf cx, bp
pop ecx
pop word [esp + 0x11]
not ah
mov byte [esp + 0x18], al
jmp 0xa93b26
push dword [esp + 4]
xchg ch, al
mov si, bp
xchg dword [esp + 5], ecx
lea ecx, [ecx + edx]
lea esp, [esp + 3]
jmp 0xa93b94
lea esp, [esp + 6]
mov dword [esp], esi
sete ah
mov word [esp], si
neg ch
mov eax, dword [esp + 4]
jmp 0xa93b58
mov cl, bl
xchg byte [esp + 3], ch
cmc
mov cl, 0x13
xchg cl, ah
rol cl, cl
jmp 0xa93c89
not cx
lea esp, [esp + 3]
mov cx, 0xec6e
bswap esi
mov si, word [esp + 7]
pop dword [esp + 4]
jmp 0xa93b7e
xchg dword [esp + 0x10], ecx
bswap eax
pop cx
sub esp, 0x19
mov cl, byte [esp + 0x23]
clc
jmp 0xa93c58
lea eax, [eax*4]
sub esp, 4
mov ecx, 0xcec911ed
pop word [esp + 0xa]
mov dword [esp + 0xa], eax
jmp 0xa93bcf
sub esp, 0x10
xchg esi, ecx
mov eax, dword [esp + 0x13]
bts cx, sp
mov al, dh
inc ecx
jmp 0xa93be5
neg esi
cld
xchg byte [esp + 0x22], ch
mov ah, 0x67
lea esp, [esp + 0x19]
jmp 0xa93c6f
mov eax, esp
pop ax
not ch
mov cx, word [esp + 0x2f]
pop dword [esp + 0x22]
mov eax, dword [esp + 0x13]
jmp 0xa93c18
pop word [esp + 0x1b]
pushfd
xchg byte [esp + 0x11], ah
lea esi, [0xe9841101]
rol eax, cl
xor ch, 0xa7
jmp 0xa93c2e
mov eax, dword [esp + 7]
xchg byte [esp + 0x10], ah
sub esp, 0x1e
xchg word [esp + 0x20], cx
lea esp, [esp + 0x19]
jmp 0xa93cb6
mov cx, word [esp + 2]
inc cx
xchg esi, eax
mov ah, al
mov ax, 0x80a1
setno al
jmp 0xa93c06
clc
push dword [esp + 0x2e]
rol eax, cl
neg ah
lea esp, [esp + 0x18]
xchg si, ax
jmp 0xa93d08
pushal
mov cx, 0xad7a
btc eax, esp
inc cx
mov esi, ebx
mov dword [esp + 0x2a], edx
jmp 0xa93ca0
mov si, 0xcc7d
bsf si, ax
not si
mov al, byte [esp + 0x18]
neg si
push word [esp + 3]
jmp 0xa93b41
pop word [esp + 6]
stc
rcr eax, 7
mov cl, 0x1d
jmp 0xa93f76
push word [esp + 1]
mov byte [esp + 0x1d], bl
mov ax, word [esp + 0x1a]
xchg byte [esp + 0x10], al
xchg word [esp + 0x16], ax
jmp 0xa93cf2
sbb ah, 0xa5
setne ah
mov eax, ecx
add ah, 0xeb
xchg word [esp + 0x1c], si
pop word [esp + 0xc]
call fcn.00a93d56
cld
neg cx
pop dword [esp + 2]
mov word [esp + 0xd], bx
rol ax, cl
jmp 0xa93f02
and ah, dh
lea esp, [esp + 0x11]
pop ax
mov ch, 0xe7
mov cl, ah
pop eax
jmp 0xa93f3f
bswap eax
mov byte [esp + 4], ch
pop dword [esp + 0x1a]
lea ecx, [ebx*4]
xchg dword [esp + 7], eax
push word [esp + 0x19]
jmp 0xa93ede
lea eax, [eax*4]
push word [esp + 6]
push di
lea ecx, [eax + edi]
lea eax, [esi*4]
xor eax, ecx
jmp 0xa93f58
pop ax
lea esi, [edx + ebx]
push word [esp + 5]
push dword [esp + 7]
sbb ch, cl
lea eax, [edi*4]
jmp 0xa93f1e
push dword [esp + 0xf]
mov ax, 0xe544
mov ecx, dword [esp + 9]
xchg dword [esp + 0xe], eax
pop word [esp + 9]
pop eax
jmp 0xa93fca
mov eax, 0xe1f25e67
std
btr ax, cx
pop eax
lea ecx, [ebp + 0x74c4]
xor eax, ebx
jmp 0xa93e9c
stc
lea esi, [edx*4]
mov si, 0x7f26
xchg byte [esp], ch
dec esi
jmp 0xa93fe2
mov dword [esp + 5], esp
add esp, 0xd
mov esi, dword [esp + 1]
xchg al, ah
mov word [esp + 1], sp
push word [esp + 2]
jmp 0xa93f8e
xchg al, ah
xchg byte [esp + 0xa], ch
lea esi, [edx*4]
xchg si, ax
xchg ah, cl
mov esi, dword [esp + 6]
jmp 0xa93fa4
bsr esi, esi
mov eax, dword [esp + 1]
push dword [esp + 5]
mov ch, byte [esp + 2]
mov dword [esp + 2], ebx
pop cx
jmp 0xa94a91
mov eax, esp
not cl
push sp
mov cx, word [esp + 8]
call fcn.00a94043
call 0xa94012
jmp 0xa94439
pop dword [esp + 9]
xchg cl, ah
mov cl, dl
inc ax
lea esp, [esp + 2]
xchg byte [esp + 0xc], al
jmp 0xa93ffd
mov al, dh
sub esp, 0x12
mov cx, 0x9bce
mov eax, 0x9d16df05
mov ah, 0xf4
neg esi
jmp 0xa94019
movzx ebx, word [eax + 0x3c]
jmp 0xa9448b
mov ch, 0x41
mov ax, word [esp + 4]
mov esi, ebx
lea eax, [eax - 0x92]
pop eax
xchg cx, ax
jmp 0xa9408a
xchg ch, al
not esi
bsr ecx, ebx
dec ah
xor eax, edi
and ch, 0xe9
jmp 0xa9411f
xchg si, cx
bswap esi
push word [esp]
mov al, ch
push dword [esp + 1]
pop cx
jmp 0xa9418f
push sp
pushal
call fcn.00a9439c
pop eax
jmp 0xa94458
xor ax, ax
cmp word [eax], 0x5a4d
je 0xa940cc
jne 0xa944d3
cmp eax, 0xbd4e2bbb
outsd dx, dword [esi]
adc eax, 0xa455329c
dec ebx
imul ecx, dword [eax - 0x3302bdd5], 0x24048f66
pop word [esp]
lea esp, [esp]
pushfd
lea esp, [esp + 2]
mov dword [esp], eax
jmp 0xa94431
add ebx, eax
cmp word [ebx], 0x4550
je 0xa91eda
jne 0xa944d3
push ebx
jecxz 0xa94510
push ss
in eax, 0xd
stosd dword es:[edi], eax
and al, 0xba
invalid
sub eax, 0x10000
jmp 0xa9445b
inc ecx
fmul dword [esi + 0x29]
fcomp dword [edi - 0x57]
xor eax, 0xba3fcca5
movsb byte es:[edi], byte [esi]
mov ah, 0xd3
cli
salc
pop ebx
retf
mov esi, 0x47585380
pop word [esp]
mov al, dl
neg si
bts eax, esi
add esp, 4
jmp 0xa94248
or ax, 0x14b9
bsf eax, esp
lea eax, [ecx + edx]
lea eax, [ebp*4]
bswap esi
cmp ax, 0x4c
jmp 0xa94906