Function at 0x1017567a
Capabilities:
Encrypt data using rc4 prga
Execute anti-debugging instructions

Disassembly:
jmp 0x101a91f2
jmp 0x1013dcc1
pushfd
bswap ax
mov dword [esp], edx
push esi
not eax
mov ah, 0xb6
pushal
mov eax, 0x2531ce8
push edi
mov dword [esp + 0x24], 0x1019d7fe
call fcn.100c320a
pushal
test ah, 0x10
add esp, 0x24
call int.1013d40a
push 0x6460cf11
push esi
cmp dword [ebp - 0x18], 8
pushal
lea esp, [esp + 0x28]
je 0x1001e293
push esp
pushfd
lea esp, [esp + 8]
jb 0x100bd1ea
not dx
cdq
mov edx, dword [ebp - 0x2c]
bswap ax
jmp 0x10077c83
pushal
lea ecx, [edi*4 + 0x3c82ac5]
setb cl
movsx cx, dl
mov dword [esp + 0x1c], edx
not dx
setb ch
movzx ecx, bl
push dword [esp + 4]
mov ecx, dword [ebp + 8]
xchg al, dh
pop eax
cwde
mov dx, word [ebp + 0xc]
lea eax, [ecx + 0x36e8a8e2]
mov word [ecx], dx
movzx dx, dl
rdtsc
mov edx, dword [esp + 0x1c]
pop eax
movzx eax, al
push 0xcf5077eb
mov ecx, dword [esp + 0x20]
lahf
sets ah
lea eax, [edi + 0x310be9b7]
mov eax, 1
pushfd
lea esp, [esp + 0x28]
jmp loc.1000a006
stc
xor cl, bl
mov ecx, dword [ebp - 0x30]
cmp cl, 0x2e
clc
xor eax, eax
call int.10198d0c
call fcn.100c5ec9
pop ss
or al, 0xb7
aad 0x8c
add al, 0xc1
dec esp
in eax, dx
call 0xa27b9052
dec edi
jp 0x100bd23d
jmp 0x100bd264
adc ch, ch
ja 0x100bd26e
xor edx, dword [ecx]
xchg ebp, eax
aam 0x28
test eax, 0x98e97db2
jne 0x100bd235
pop edi
lodsb al, byte [esi]
and eax, 0xb00626cf
imul esi, dword [0xf29d0da5], 0x4fb17e5a
mov cl, 0x4f
xchg ebp, eax
daa
jg 0x100bd282
invalid
paddusb mm4, mm2
push es
sal byte [edx], cl
aam 0x49
sal byte [0x844da3da], cl
invalid
fisub dword [ebx + 0x668f844d]
rcr dword [eax - 0x39d54be], 1
jecxz 0x100bd2c7
mov eax, 0x68449762
mov ebp, 0x83915b10
cmp eax, 0x7d6b270b
packuswb mm6, qword [edi + eax*4 - 0x555c7383]
adc eax, 0xe8c8770b
push edi
adc byte [ebx - 0x6f], bl
xor dword [esi], 0x3d
or esp, dword [edi]
imul edi, dword [ebp + 0xf], 0x67
mov ah, 0x87
jge 0x100bd21e
mov dword [0x770b15aa], eax
enter 0x57e8, 0x2f
das
lea ebx, [edi]
sbb dword [edx + 0x1af34fea], 0xffffffa7
cmp cl, 0xb8
dec ebx
aad 0x41
mov eax, dword [0xd865b445]
lodsd eax, dword [esi]
pop esp
mov eax, dword [0x57761f3a]
imul edx, dword [edi - 0x5b], 0xdca3ab6c
jb 0x100bd2c9
push cs
aaa
bound ecx, qword [edx + 0x1e01d347]
push ds
dec ecx
out 0xce, eax
push ds
test eax, 0x58ad65e5
in eax, 0x65
lodsd eax, dword [esi]
pop eax
enter 0x5b34, 0xffffffffffffff8e
xor eax, 0x55c0501b
enter 0xffffffffffff81af, 0x6f
xchg ebp, eax
mov ah, 0x6d
jno 0x100bd29a
and byte cs:[edi + 0x93a788d], bh
nop
pop edi
in al, dx
insd dword es:[edi], dx
xchg byte [ecx + 0x3772e30d], al
inc ecx
fadd qword [ecx + 0x26]
ja 0x100bd363
mov al, 0xff
cmp esp, dword [ecx - 0x30]
ja 0x100bd2cd
jno 0x100bd2a8
imul edx, dword [eax], 7
xor dword [ecx - 0x3f1e4424], esp
inc edi
ficomp dword [edx - 0x555b1c95]
in eax, dx
xor al, 0xf4
add dword [0xef2fa7b4], ebx
push ds
dec edi
ja 0x100bd2af
mov byte [edi + 0x5b481171], ch
mov byte [esi - 0x6b6547bd], 0xe2
mov esp, dword [edi + 0x3c]
xlatb
ja 0x100bd360
iretd
and bh, byte [ebp - 0x2f]
ret 0x238c
sbb al, 0x32
jno 0x100bd341
fisttp qword [esi - 0x422b1739]
or eax, 0xbe85000
pop eax
invalid
mov es, edi
call fcn.1019913f
push eax
call fcn.100b2b7c
aam 0xc9
mov byte [ecx + 0x4ea77978], cl
pop ebx
and dl, byte [edx]
retf 0xa47a
mov dword [ebp - 0x10], eax
clc
push ebp
mov word [esp], 0xde53
pushfd
cmp dword [ebp - 0x10], 0
mov byte [esp + 4], dl
pushfd
pushfd
lea esp, [esp + 0x10]
jne 0x10151288
movzx ax, bl
mov eax, 0
pushal
lea esp, [esp + 0x20]
jmp loc.1000a006
lea eax, [edi*2 + 0x354b1f7f]
not ax
lea eax, [ecx*8 - 0x7868101e]
push ecx
mov ch, 0xe7
mov al, dl
jge 0x10098237
push edx
movsx dx, dl
movzx ecx, cl
mov ecx, dword [ebp + 8]
xchg dl, al
mov dx, word [ebp + 0xc]
movzx ax, bl
lahf
mov word [ecx], dx
seta ah
xchg ah, cl
rdtsc
pop edx
lahf
call fcn.1017d1b0
jmp 0x101512ed
xor dh, byte cs:[edx - 0x7e]
out dx, al
invalid
lea esp, [esp + 0xc]
je 0x100614d2
push esp
mov dword [esp], 6
jmp 0x1018f37f
call fcn.1001ea1b
call fcn.10157c46
jmp 0x1007e12f