Function at 0x90adf8
Capabilities:
Encrypt data using aes

Disassembly:
lea eax, reloc.iphlpapi.dll_GetAdaptersInfo
mov al, ah
lea edi, [esi - 0x8d]
jmp 0x90a528
movzx ebx, byte [esi + 0x11]
jmp 0x90a6ba
call 0x90adfa
sub esp, dword [ebp + reloc.iphlpapi.dll_GetAdaptersInfo]
pop ebx
salc
inc esp
and ebx, esi
sbb al, bh
outsb dx, byte [esi]
jns 0x90a4f9
mov ebx, 0x89e548d
lea edi, [ebx*4]
not di
cmp di, 0x15f2
mov al, ah
jmp 0x90a563
mov dword [ecx - 8], eax
mov ax, 0x975f
mov eax, 0xbbbc7214
btr eax, edi
mov al, ah
jmp 0x90a54c
mov ebx, 0x8af8b30f
invalid
lea esp, [esp + 0x14]
add dword [ebp - 4], 4
jmp 0x90a4ee
mov eax, dword [edx - 8]
lea edi, [ecx + edi]
mov edi, dword [ecx - 8]
sub esp, 0x14
jmp 0x90a50d
hlt
mov eax, dword [edx - 4]
stc
call 0x90a536
insd dword es:[edi], dx
mul byte [ebx + eax - 2]
dec edx
jge 0x90a548
jnp 0x90a57d
in eax, dx
pop edx
mov ds, word [ecx]
lea ecx, [esi + 8]
jmp 0x90a2c6
cli
push 0x474bfa0f
fisttp word [edi + 0x2a]
fldenv [0xc1a630af]
xor byte [ebp - 0x163c4353], al
mov bh, 0x2c
std
invalid
push eax
mov eax, ebx
lea eax, [eax*4]
jmp 0x90a7a4
mov edx, dword [esi]
pushal
call 0x90a70d
insb byte es:[edi], dx
and cx, 0xddba
mov dword [esp + 4], edx
jmp 0x90a761
shr edi, 0x18
sub esp, 0x14
pushal
pop word [esp + 0x1d]
lea esp, [esp + 2]
jmp 0x90a742
add esi, 0x10
setg dh
not dh
lea edi, [eax*4]
push edx
jmp 0x90a704
mov edi, dword [edi*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
and edi, ecx
mov edi, dword [edi*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
jmp 0x90a78d
sub esp, 0x14
lea esp, [esp + 0x18]
popal
sub esp, 0x1a
mov byte [esp + 3], bh
lea esp, [esp + 2]
jmp 0x90a718
lea esp, [esp + 0x4c]
xor edi, dword [ebx*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
mov ebx, dword [esp]
jmp 0x90a7da
and ebx, ecx
jmp 0x90a776
lea eax, reloc.iphlpapi.dll_GetAdaptersInfo
mov ebx, dword [eax]
pop eax
mov dh, byte [esp]
mov di, cx
mov dl, 0xc
jmp 0x90a730
lea esp, [esp + 2]
mov ebx, dword [ebx*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
pushal
push edx
mov word [esp + 0x12], di
jmp 0x90aa66
movzx ebx, byte [esi + 2]
clc
pushal
pop dword [esp]
pop word [esp + 9]
jmp 0x90a7ba
lea esp, [esp + 0x34]
xor edi, dword [edx*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
lea edx, reloc.iphlpapi.dll_GetAdaptersInfo
bswap edx
pushal
jmp 0x90a869
pushal
and edx, ecx
sub esp, 6
mov dword [esp], ebp
lea esp, [esp + 2]
jmp 0x90a7fb
pop dword [esp + 0x14]
mov edx, dword [esi + 4]
call fcn.0090a847
lea esp, [esp + 3]
mov edi, dword [edi*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
sub esp, 2
push esp
push dword [esp + 4]
jmp 0x90a8e3
and edi, ecx
jmp 0x90a955
lea esp, [esp + 2]
jmp 0x90a8cd
sub esp, 0xc
lea esp, [esp + 3]
and edx, ecx
mov edx, dword [edx*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
jmp 0x90a81d
sub esp, 0x12
pop word [esp + 1]
mov ebx, dword [ebx*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
sub esp, 6
push dword [esp]
jmp 0x90a9ef
xor edi, dword [ebx*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
mov bl, byte [esp]
lea ebx, [ebx + edi]
not bx
movzx ebx, byte [esi + 6]
jmp 0x90a911
mov edi, dword [edi*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
and ebx, ecx
lea esp, [esp + 0x44]
jmp 0x90a92f
lea esp, [esp + 2]
and ebx, ecx
call fcn.0090a9d1
lea esp, [esp + 0x60]
xor edi, dword [ebx*4 + reloc.iphlpapi.dll_GetAdaptersInfo]
movzx ebx, byte [esi + 5]
sub esp, 8
add esp, 1
jmp 0x90a8fc
cmc
and ebx, ecx
pushal
sub esp, 4
jmp 0x90aa23
mov dword [esi + 0xc], edi
push esp
lea esp, [esp + 0xc]
jne 0x90a403
je 0x90a48c
xchg dword [esi], edx
test bl, ah
push ds
fist dword [ebx]
mov ebx, dword [ebx]
jle fcn.0090ad6e
cmp ch, byte [esi - 0x2d046747]
dec ebp
jmp 0x90adc2