Function at 0x100184b5
Capabilities:
Encode data using xor

Disassembly:
xchg dword [0x4b0101f6], esp
enter 0x2687, 0xfffffffffffffff6
add dword [ecx], eax
outsd dx, dword [esi]
enter 0x2787, 0xfffffffffffffff6
add dword [ecx], eax
arpl ax, cx
xchg dword [eax], ebp
test byte [ecx], 1
imul ecx, eax, 0x1f62987
xchg dword [ecx], ebp
test byte [ecx], 1
invalid
invalid
xchg dword [ecx], ebp
test byte [ecx], 1
enter 0x2a87, 0xfffffffffffffff6
add dword [ecx], eax
xchg dword [edx], ebp
test byte [ecx], 1
inc esi
enter 0x2b87, 0xfffffffffffffff6
add dword [ecx], eax
xchg dword [ebx], ebp
test byte [ecx], 1
imul ecx, eax, 0xffffff87
sub al, 0xf6
add dword [ecx], eax
je 0x10018499
xchg dword [0x670101f6], ebp
enter 0x2e87, 0xfffffffffffffff6
add dword [ecx], eax
enter 0x2f87, 0xfffffffffffffff6
add dword [ecx], eax
xchg dword [edi], ebp
test byte [ecx], 1
jbe 0x100184ae
xchg dword [eax], esi
test byte [ecx], 1
jno fcn.100184b5
xchg dword [ecx], esi
test byte [ecx], 1
je 0x100184bc
xchg dword [edx], esi
test byte [ecx], 1
jnp 0x100184c3
xchg dword [ebx], esi
test byte [ecx], 1
inc edi
enter 0x3487, 0xfffffffffffffff6
add dword [ecx], eax
jo 0x100184d1
xchg dword [0x760101f6], esi
enter 0x3687, 0xfffffffffffffff6
add dword [ecx], eax
je 0x100184df
xchg dword [edi], esi
test byte [ecx], 1
jnp 0x100184e6
xchg dword [eax], edi
test byte [ecx], 1
push esi
enter 0x3987, 0xfffffffffffffff6
add dword [ecx], eax
jno 0x100184f4
xchg dword [edx], edi
test byte [ecx], 1
inc esi
enter 0x3b87, 0xfffffffffffffff6
add dword [ecx], eax
arpl ax, cx
xchg dword [esi + esi*8], edi
add dword [ecx], eax
jbe 0x10018509
xchg dword [0x630101f6], edi
enter 0x3e87, 0xfffffffffffffff6
add dword [ecx], eax
add dl, byte [ebx + eax*4 - 0x34]
or al, 0x23
add eax, dword [edx]
pop esp
push ebp
push ebp
test esi, eax
push es
xor ebp, 0x1b
sub al, 3
add al, byte [ebx + 0x26d91f5]
add al, byte [ebx + 0x3091fc5]
add bl, byte [ebp + 0x58]
push ebx
test esi, eax
push es
adc eax, 0x24
fadd qword [edx]
add al, byte [ebx + 0x24e71f8]
add ah, byte [eax - 0x38]
xchg dword [edx], ebx
clc
add dword [ecx], eax
push esp
enter 0x1b87, 0xfffffffffffffff8
add dword [ecx], eax
jbe 0x10018557
xchg dword [eax + edi*8], ebx
add dword [ecx], eax
outsb dx, byte [esi]
enter 0x1d87, 0xfffffffffffffff8
add dword [ecx], eax
dec ebx
enter 0x1e87, 0xfffffffffffffff8
add dword [ecx], eax
outsd dx, dword [esi]
enter 0x1f87, 0xfffffffffffffff8
xchg dword [edi], ebx
clc
add dword [ecx], eax
arpl ax, cx
xchg dword [eax], esp
clc
add dword [ecx], eax
imul ecx, eax, 0x1f82187
add dword [edi - 0x38], esp
xchg dword [edx], esp
clc
add dword [ecx], eax
push esp
enter 0x2387, 0xfffffffffffffff8
clc
add dword [ecx], eax
js 0x1001858f
xchg dword [eax + edi*8], esp
add dword [ecx], eax
arpl ax, cx
xchg dword [0x560101f8], esp
enter 0x2687, 0xfffffffffffffff8
add dword [ecx], eax
jno 0x100185a4
xchg dword [edi], esp
clc
add dword [ecx], eax
pop eax
enter 0x2887, 0xfffffffffffffff8
add dword [ecx], eax
arpl ax, cx
xchg dword [ecx], ebp
clc
add dword [ecx], eax
add bl, byte [ecx + 0x55]
test esi, eax
push es
or ecx, 0x54
inc eax
add al, byte [edx]
cmp ecx, 0xffffffd9
cmp al, 3
add ch, ch
or byte [esi + ecx*2], bh
inc esp
dec edi
inc ecx
popal
pop eax
pop ecx
test esi, eax
push es
adc eax, 0xffffff91
fld dword [edx]
add al, byte [ebx + 0x2ff42d0]
add al, byte [ebx + 0x20123d0]
add ah, byte [eax - 0x38]
xchg dword [esi], eax
clc
add dword [ecx], eax
push esp
enter 0x787, 0xfffffffffffffff8
add dword [ecx], eax
jbe 0x100185f9
xchg dword [eax], ecx
clc
add dword [ecx], eax
outsb dx, byte [esi]
enter 0x987, 0xfffffffffffffff8
add dword [ecx], eax
dec ebx
enter 0xa87, 0xfffffffffffffff8
add dword [ecx], eax
outsd dx, dword [esi]
enter 0xb87, 0xfffffffffffffff8
add dword [ecx], eax
arpl ax, cx
xchg dword [eax + edi*8], ecx
add dword [ecx], eax
imul ecx, eax, 0x1f80d87
add dword [edi - 0x38], esp
xchg dword [esi], ecx
clc
add dword [ecx], eax
push eax
enter 0xf87, 0xfffffffffffffff8
add dword [ecx], eax
jbe 0x10018631
xchg dword [eax], edx
clc
add dword [ecx], eax
dec edx
enter 0x1187, 0xfffffffffffffff8
add dword [ecx], eax
enter 0x1287, 0xfffffffffffffff8
add dword [ecx], eax
arpl ax, cx
xchg dword [ebx], edx
clc
add dword [ecx], eax
enter 0x1487, 0xfffffffffffffff8
add dword [ecx], eax
enter 0x1587, 0xfffffffffffffff8
add dword [ecx], eax
je 0x1001865b
xchg dword [esi], edx
clc
add dword [ecx], eax
add cl, byte [ebp + 0x1e1c697]
add dword [ebx + 0x1f6fa97], ecx
add dword [eax - 0x7d], ebx
call 0x1204599b
adc eax, 0x74
push ecx
add al, byte [edx]
pushal
push edx
push esp
test esi, eax
push es
or edx, 0xffffffc0
insb byte es:[edi], dx
add eax, dword [edx]
or edx, 0xffffffa0
xchg esp, eax
add al, byte [edx]
xor edx, 0xffffff8a
pop ecx
add al, byte [edx]
pop edx
push ebp
push esp
test esi, eax
push es
xor ebp, 0x14
mov edi, 0x665d0202
mov dword [0x202021a], eax
mov eax, dword [edi + 0x101e566]
lea ecx, [edi + 0x101e566]
lea edx, [ebx + 0x32]
mov edx, dword [edi + 0x101e562]
lea eax, [edi + 0x101e562]
mov eax, dword [edi + 0x101ede2]
pop ecx
in eax, dx
push es
xor eax, 0x83494638
jmp 0x1203c183