Function at 0x162b7ba
Capabilities:
Encode data using xor

Disassembly:
lea esi, [esi + eax - 0x7f23be9c]
and cx, dx
not cx
shl al, 0xe1
mov word [esi + eax - 0x7f23be3c], cx
cdq
jp 0x1641c7b
call fcn.01877274
mov dh, 0x15
inc ebx
xchg edi, eax
xor ch, al
sub al, 0x58
scasd eax, dword es:[edi]
cmp ch, byte [esi]
mov ebp, 0x6727e281
outsb dx, byte [esi]
xor cl, byte [ecx - 0x67]
stc
xchg ebx, eax
jmp 0xb764c4c4
mov ecx, dword [ebp + edx*2 - 0x7a7aa030]
lea ebp, [ebp + edx*2 - 0x7a7aa02c]
mov dword es:[eax + edx*2 - 0x7a7aa034], ecx
sar edx, 0x33
mov ecx, dword [esi + edx*2 - 0xf4e]
movsx eax, dl
bt eax, eax
and eax, eax
lea esi, [esi + edx*4 - 0x1e98]
setns al
xor ecx, ebx
call fcn.0191d202
mov edx, 0xef1cc19c
mov eax, edx
mov eax, dword [ebp]
inc dx
mov ecx, edx
mov ecx, dword [ebp + 4]
add edx, edx
neg dl
adc ebp, 7
and dx, dx
setge dl
jne 0x1886054
not eax
add word [esp + ecx*2 - 0x60100009], 0xec9a
sub cl, byte [esp + edx - 0x64a669be]
xchg esi, eax
pop ecx
wait
not cx
rol eax, 2
btr cx, cx
lea eax, [eax + edx + 0x1ceb1068]
btc edx, 0x31
xor ebx, eax
call fcn.016d3d7c
dec ebp
pushal
aam 0x49
cld
jge 0x155d0ab
pop edx
push 0x1fdbb313
dec esi
std
lahf
cmp ebp, ebp
aas
scasb al, byte es:[edi]
sub byte [ebx + ecx*4 - 0x4f], bh
inc esi
cmc
push eax
jae 0x155d137
xlatb
salc
dec eax
xor dword [eax], ebx
add dword [eax - 0x62004c6e], 0x89d37b9d
add dword [ecx], eax
xor al, 0xff
ret 0xf610
add cl, byte [edi + esi*8 - 0x26]
pop edx
arpl word [ebx - 0x3d7b5f32], si
out dx, eax
imul esi, dword [ecx + eax*4], 7
cmp dword [ecx - 0x72], 0xffffffd1
mov esp, 0xb953b5a0
retf 0x71f9
or edx, dword [ebp + eax - 0x21a28e2b]
lea ecx, [eax*8 + 0x690cfdb2]
lea ebp, [ebp + eax*2 - 0x43451c52]
xor cl, al
xor edx, ebx
and eax, eax
not edx
not al
add cx, cx
sbb edx, 0xed91753c
sar ax, 0x84
sub ecx, 0x37b5e20f
neg edx
inc eax
sal cl, 0x84
lea edx, [eax + edx + 0x7003e14]
shr eax, 0xe6
shr ecx, cl
xor edx, 0x76b52898
cbw
lea ecx, [ecx*4 + 0x608dda9c]
or ax, 0xe432
xor ebx, edx
xor eax, ecx
adc esi, edx
cdq
cwde
dec ax
mov eax, dword [edi + eax - 0x2bba]
neg edx
add edx, dword [ecx + edi - 0x608ed444]
lea edi, [ecx + edi - 0x608ed440]
jmp 0x17484fb
xor ebx, ecx
idiv eax
add esi, ecx
mov edx, dword [edi + edx - 0x403361fb]
mov eax, dword [edi + 4]
mov ecx, dword [edi + 8]
mov dword [esp], 0xf317ed3c
add edi, 4
sal dword [esp], 0x18
sal word [esp], 0x84
div ecx
mov dword [edi], edx
mov edx, dword [esp]
not dx
call fcn.016ac472
mov ecx, 0x6889e7a5
movzx eax, cl
btr ax, ax
mov cx, word [ecx + esi - 0x6889e7a5]
mov edx, eax
lea eax, [edx + eax*2 + 0x732238b2]
rol al, 0x21
mov dx, word [esi + edx - 0x83]
or eax, 0x3c23849e
ja 0x152a574
mov ax, word [edi]
mov edx, 0x6731e2ac
movsx ecx, dx
mov dx, word [edi + edx - 0x6731e2aa]
lea ecx, [ecx + ecx*4 + 0x2001a510]
mov cl, byte [ecx + edi - 0x20011268]
push 0xcc0fd73b
sar word [esp], 8
shr word [esp + 2], 0x23
adc edi, 3
and word [esp], 0xb319
shld ax, dx, cl
neg byte [esp + 2]
mov word [edi], ax
mov eax, 0xe59fb48c
xadd dword [esp], eax
mov eax, dword [ebp + eax*2 - 0x32ff6622]
mov edx, 0x26948531
lea ebp, [edx + ebp - 0x2694852d]
shl edx, 0x2d
xor eax, ebx
btc edx, edx
not eax
jb 0x16b241f
add byte [esp], 0xb1
sbb eax, 0xee301797
not eax
lea ecx, [edx*8 - 0x6276b6f1]
add dx, 0x680a
sub dx, 0xfb1c
rol eax, 2
dec word [esp + ecx - 0x22ba4916]
xor eax, 0xd707f9b0
xor ebx, eax
call fcn.016bcb7d
mov eax, dword [ebp]
mov edx, 0x3d3d501a
jmp 0x155d038
mov eax, dword [eax + edi - 0x7f23be3c]
lea ecx, [edx + edx*2 + 0x53858496]
not ecx
setb dl
lea edi, [edi + edx*2 + 2]
dec edx
xor eax, ebx
btc dx, cx
lea eax, [edx + eax + 0x152ee2b2]
setb dl
or dl, ch
bswap eax
jle 0x15ac942
neg eax
neg cx
rol eax, 2
sal ecx, 0x9e
and ecx, edx
neg eax
xor ebx, eax
sar ecx, 0x5c
sar dx, 0xe2
sub edx, ecx
adc ebp, eax
lea eax, [ecx + ecx*4 - 0x48685dea]
add ecx, ebp
jmp ecx
mov dword fs:[eax], ecx
sbb edi, 4
mov ecx, 0xd8221293
sub edx, 0xda3a4c83
mov edx, dword [edi + edx*8 - 0x1ff9b3e8]
xor edx, ebx
mov eax, ecx
push ecx
sal dword [esp], 0x1f
bswap edx
rol edx, 1
add word [esp + 1], 0xed11
xor ecx, 0x9b172087
bswap edx
rol cx, 0xc3
bswap ecx
ror al, cl
xor edx, 0x909a67ae
xadd dword [esp], eax
add ecx, ecx
lea eax, [eax - 0x344a886f]
xor ebx, edx
push eax
call fcn.015a6139
dec eax
bswap eax
ror ecx, 0x94
not cx
xor ebx, eax
add esi, eax
movzx eax, cx
jmp 0x1927003
cdq
add edx, esi
jmp edx