Function at 0x96376f
Capabilities:
Encrypt data using aes

Disassembly:
mov eax, dword [esp]
inc dx
jmp 0x92fab2
xchg cl, ah
mov eax, edi
clc
jmp 0x963702
movzx esi, byte [eax + 0xa]
jmp 0x9633aa
xor edx, esi
shr esi, cl
mov edi, dword [esp]
push bx
lea esp, [esp + 2]
jmp 0x9632d4
mov dword [ecx + 8], edx
xchg edx, edi
jmp 0x963319
neg bh
shl edx, 8
xor edx, esi
jmp 0x9632fa
movzx edx, byte [eax + 0xc]
xchg si, bx
bsf bx, ax
not bl
not bh
jmp 0x963363
rol bl, cl
mov bh, 0xc
not di
movzx esi, byte [eax + 0xb]
setge bh
jmp 0x963310
xor edx, esi
jmp 0x963387
movzx esi, byte [eax + 0xd]
bswap edi
shl edx, 8
mov bh, byte [esp]
jmp 0x96334d
movzx eax, byte [eax + 0xf]
jmp 0x9633cf
movzx esi, byte [eax + 0xe]
lea ebx, [ecx + 6]
xchg ebx, ebp
mov bp, dx
jmp 0x963371
shl edx, 8
lea ebx, [edi - 0x2a876520]
xor edx, esi
dec bl
jmp 0x96333d
xor edx, esi
jmp 0x963442
shl edx, 8
setae bh
jmp 0x9633b9
movzx esi, byte [eax + 9]
shl edx, 8
mov ebx, dword [esp]
dec bl
jmp 0x9632eb
mov dword [esi], edx
pop esi
xchg al, ah
inc ax
dec di
mov bl, byte [esp]
jmp 0x963419
push esi
mov esi, ecx
add esi, 0xc
jmp 0x9633fb
mov eax, edx
mov bh, 0x2b
bsr di, sp
neg bl
jmp 0x963464
mov eax, dword [eax*4 + 0x93ad08]
not bh
sub esp, 0xc
jmp 0x96344e
shl edx, 8
shr si, cl
xor edx, eax
bswap esi
jmp 0x963411
lea esp, [esp + 0x44]
xor eax, 0x1000000
setne bl
pushal
jmp 0x963470
shr eax, 0x10
mov esi, 0xff
and eax, esi
jmp 0x963425
mov bp, 0xb2c2
mov dword [esp + 0x1b], ebp
mov edi, edx
lea ebp, [edx - 0x532b48ea]
jmp 0x963560
btr esi, ecx
mov dx, 0x3f4b
movzx edx, byte [eax + 8]
mov bh, ch
jmp 0x9633ea
mov bp, cx
mov bp, ax
lea ebp, [edx - 0xa0]
jmp 0x9634d5
lea esp, [esp + 2]
lea esp, [esp + 0x20]
and edi, 0xff0000
mov ebx, dword [ecx + 4]
jmp 0x9634ac
and eax, 0xff000000
mov bp, word [esp]
btr ebp, ecx
stc
jmp 0x963522
mov edi, dword [edi*4 + 0x93ad08]
push ax
mov word [esp], bx
lea ebp, [eax + ebp]
xchg ebp, ebx
jmp 0x9634c2
lea esp, [esp + 2]
jmp 0x963535
xor eax, edi
mov bp, word [esp]
mov edi, edx
sub esp, 0x1a
lea ebp, [edx - 0xf4]
jmp 0x96350c
shr edi, 0x18
btr bp, bp
movzx edi, byte [edi*4 + 0x93ad08]
lea ebp, [ecx*4]
jmp 0x96361e
shr edi, 8
mov ebx, 0x1f525ed8
bswap ebx
and edi, esi
mov bx, 0x4460
jmp 0x9634f8
and edi, ebp
xor eax, edi
mov edi, dword [esp]
lea esp, [esp + 0x34]
jmp 0x9635b7
mov edi, dword [edi*4 + 0x93ad08]
mov ebp, 0xff00
sub esp, 0x1c
jmp 0x963572
xor ebx, eax
cmc
call fcn.009635c9
add dword [ebx + 0x2b9d6e0b], ebx
imul edi, esp, 0xba04f592
dec ecx
call 0xed1936ee
pop ss
xor eax, dword [ecx]
sub esp, 0x17
lea esp, [esp + 3]
lea esp, [esp + 0x14]
lea edi, [ecx + 0x10]
jmp 0x9635a1
mov edi, edx
and edi, esi
bts bp, di
mov bp, ax
jmp 0x963590
mov bp, ax
xor eax, edi
lea ebp, [0x41a537c4]
lea edi, [0x285cc7b6]
bswap ebp
jmp 0x9635e9
xor edx, esi
mov di, 0xb8a7
mov ebp, 0xacc1b8e4
mov dword [ecx + 4], edx
jmp 0x96349a
sub esp, 0x1e
and ecx, esi
push edi
jmp 0x9636cb
stc
shr edi, 0x10
call fcn.009636b1
cli
push 0x7b3bfa0f
fisttp word [edi + 0x2a]
fldenv [eax - 0x4e]
lodsd eax, dword [esi]
mov esp, 0x8e9c18f
shr ecx, 8
bswap edi
bsr di, cx
mov edi, edx
push cx
jmp 0x963681
mov edi, ecx
lea edi, [edi*4]
lea edi, [edi + 0x93ad08]
mov ecx, dword [edi]
pop edi
jmp 0x963689
mov edx, dword [eax + 0xc]
mov ecx, edx
mov edi, ebp
jmp 0x9636a2
dec di
jmp 0x9637a4
lea esp, [esp + 0x38]
xor ecx, dword [ebx]
mov edx, 0xc4d4573d
jmp 0x9637df
xor ecx, edx
lea edi, [eax + ecx]
lea edx, [esi + 0x6e]
jmp 0x96378e
xor ecx, dword [eax]
mov dh, 0xd9
sub esp, 4
jmp 0x963821
lea edi, [eax + 0x10]
mov dx, 0x2b26
lea edx, [eax + ecx]
jmp 0x9637c9
mov dword [edi], ecx
not dh
jmp 0x963849
lea esp, [esp + 4]
add ebx, 4
mov dx, 0x8e10
lea edx, [esp + esi]
bswap edx
jmp 0x96380b
push ebp
jmp 0x963882
mov edx, dword [eax + 4]
xor edx, ecx
btr cx, bx
lea ecx, [ebx + esi]
jmp 0x963833
mov ecx, dword [eax + 8]
jmp 0x96388d
mov ebp, eax
add ebp, 0x14
mov dword [ebp], edx
pop ebp
jmp 0x96386c
xor ecx, edx
mov edx, ecx
call fcn.009638cb
loope 0x963910
out dx, al
mov dword [eax - 0x43], edi
leave
push ebp
lds ebp, [edi + ebx*2 - 0x2108bb11]
sub dword [eax - 0x45], ecx
or al, 0xc5
xchg ebx, eax
add byte [ebp - 0x16e3db9c], cl
sar esp, 0xff
mov edx, dword [eax + 0xc]
jmp 0x9638f3
xor edx, ecx
mov dword [eax + 0x1c], edx
call fcn.009638d0
invalid
jne 0x92faa7
mov ebp, esi
lea edi, [eax + ecx]
push 0xa
jmp 0x9644e0
jns 0x9638fb
mov byte [ebx - 0x34], bh
fstp dword [edx - 0x38]
scasd eax, dword es:[edi]
pop edx
in eax, dx
cmp dword [edi + 0x75b94a2f], edi
adc cl, byte [edi]
mov dh, 0x70
pop es
mov di, 0x601f
shl edx, 8
lea edi, [esp + 0x5fc0]
jmp 0x96366e
lea esp, [esp + 1]
lea esp, [esp + 8]
pop ebx
ret
lea ebp, [ecx + ebx]
mov ebp, dword [esp + 4]
setg bh
push ax
lea esp, [esp + 1]
jmp 0x963961
lea esp, [esp + 4]
pop edi
xchg bl, bh
mov bp, 0x7687
mov esi, dword [esp]
jmp 0x963a43
mov al, byte [esp]
mov eax, dword [esp]
mov esi, dword [esp]
mov edi, eax
jmp 0x963dfe