Function at 0x10140687
Capabilities:
Packed with generic packer

Disassembly:
mov edx, dword [esp + edx*2 - 0x6037f104]
js 0x101d1827
neg dword [esp + 0x30]
shr word [esp + 0x14], 0xe1
je 0x1020b927
call fcn.101196c2
movzx dx, byte [ebp]
mov ecx, 0x3312d819
not ecx
xor ecx, 0x16bc1737
mov cl, byte [ebp + 2]
sbb ebp, 2
call fcn.10240084
pushfd
add dword [esp + 8], 0xefdbd841
mov edx, 0x62a4512c
call fcn.101e488f
mov byte [eax], bl
int3
setne byte [esp + 0x20]
sets byte [esp + 0x10]
push dword [esp + 0x18]
popfd
lea esp, [esp + 0x24]
ret
js 0x101936b7
call fcn.10255aba
jle 0x10217d2a
cmp word [esp + edx - 0x1f1c], dx
mov dword [esp + edx - 0x1f34], edx
mov edx, dword [esp + edx*2 - 0x3e58]
setns byte [esp]
test dword [esp], 0xb7b6aabc
not byte [esp + 0x18]
jl 0x1009d199
shl dword [esp + 0x18], 0x77
push dword [esp + 0x14]
popfd
lea esp, [esp + 0x20]
ret
mov ecx, 0x3693db37
xor cx, cx
not ebx
shr cl, 5
neg cx
shl cl, 0xb9
js 0x1016b4cd
mov ecx, dword [esp + ebx + 0x9b3b]
mov ecx, dword [ecx + ebx + 0x9b37]
jne fcn.100ad50c
neg bx
test ebx, ebx
lea ebx, [ebx*8 + 0xa053d39]
jg 0x1021062b
mov dword [esp + 4], ebx
lea ecx, [ecx + 0x59955186]
call fcn.10189136
jae 0x100d998f
mov eax, dword [esp + eax - 0x6b0639fe]
mov eax, dword [eax + edx + 0x5dcff0e6]
add dword [esp + edx + 0x5dcff0e6], 0x83c73a7
mov dword [esp + 4], esi
jb 0x10116786
xchg dword [esp + ebx + 0x22ef43c0], esi
mov ecx, dword [esp + 0x28]
jle 0x101fd11c
call fcn.1022a5fb
xor dl, bl
call fcn.1012d65a
pop ebx
sub al, 0xe
jle 0x101fd08d
sub byte [edi], cl
mov cl, 0xf8
mov dword [eax], edx
wait
dec ecx
dec eax
mov ah, 0x49
jo 0x101fd09e
salc
cmc
loopne 0x101fd117
in al, dx
jae 0x101fd0e4
xchg byte [esi + 0x99a6d46], bh
xchg esi, eax
scasd eax, dword es:[edi]
fistp dword [eax]
in al, 6
insd dword es:[edi], dx
lcall 0xe418, 0xdbaf9609
sbb ah, ah
push es
invalid
enter 0x156e, 0xffffffffffffffce
sahf
pushfd
pop ss
mov esp, 0xe276134b
js 0x101fd081
push ds
mov dword [ebp - 0x74549468], esp
mov ch, 0x88
aaa
and eax, 0x2af4e650
sbb byte [ecx], 0x90
or ecx, esp
imul ebp, dword [ebx + 0x3788b58b], 0x25
push eax
mov esi, dword [ebp + 0x50253788]
out 0xf4, al
sub al, byte [eax - 0x1ef66fe7]
loope 0x101fd16c
ja 0x101fd0a4
scasb al, byte es:[edi]
mov ah, 0x2d
jne 0x101fd0d1
xlatb
dec esi
cmpsb byte [esi], byte es:[edi]
xor byte [ecx], dh
hlt
inc esp
adc byte es:[ebx], dh
add al, ch
shr byte [edx + eax], 1
add byte [eax], ch
ja 0x101fd0f9
call fcn.1021fdf1
sub byte [edi - 0x2b], dh
daa
imul esp, dword [eax], 0x6189b0a0
mov bl, 0xf2
pushal
loop 0x101fd0fc
jno 0x101fd14b
jo 0x101fd0f3
inc esp
or byte [ebp - 0x357bf26], dh
mov al, byte [0x605e77b6]
mov al, 0x6d
sbb eax, 0x4f9fa17e
outsb dx, byte gs:[esi]
stosb byte es:[edi], al
retf
cmpsb byte [esi], byte es:[edi]
inc ebp
xchg edx, eax
jne 0x101fd0e6
cmp esi, dword [edi]
sub bh, byte [edx]
cwde
rol dword [edx + 0x53d4c21e], 1
mov edi, 0xa4d3e4e9
rol dword [ebp + 0x4ab78554], 0x19
lahf
xchg edx, eax
or eax, edx
add ch, byte [eax + eax*8]
sub al, 0xc0
retf
cmovne ebx, edx
lea esi, [esi + ebx + 0x35deeea7]
mov dword [esp + edx*4 + 0x7d5341bc], ebx
push 0x7395eeb1
or edx, 0x6c110238
xor ebx, dword [esp + 4]
jl 0x101098d5
cmp di, 0xd999
mov edi, dword [esp + 0x10]
mov edi, dword [edi]
mov dword [esp + edx + 0x31e30010], esi
mov byte [esp + edx*2 + 0x63c60008], 0x31
jle 0x1020aef8
and dx, word [esp + 0x1a]
lea edi, [edi + ebp + 0x57573718]
add dword [esp + 0x1c], 0xefece194
test ebp, 0xb8987393
mov ebx, dword [esp + ebx - 0x2683d287]
call fcn.1012b1fd
add dword [esp + 0x10], 0xfff846b6
neg di
push edi
je 0x100af495
call fcn.10200bfb