Function at 0xdd3269
Capabilities:
Encode data using xor

Disassembly:
sbb cl, 0x16
xor cl, 0x8d
shl ax, 0x82
cbw
ror edx, 0x98
inc cl
div al
sal al, 0x43
dec edx
ror cl, 1
shl al, 0x26
add al, 0x1d
dec eax
adc cl, 0xac
xor cl, 0x10
add ax, dx
xor bl, cl
xadd eax, edx
shr dx, 0x47
adc ecx, esp
btr eax, edx
lea eax, [edx + 0x73a10c9a]
btc dx, dx
movzx ax, byte [ecx + eax - 0x6d120dec]
mov ecx, 0xcda07588
cmovae ecx, edx
lea ecx, [ecx + ecx*2 - 0x5b48397b]
sbb ebp, 2
call fcn.00968750
mov ecx, dword [edi]
mov eax, dword [edi + 4]
jmp 0xcb19b3
push 0xcdb540af
sar word [esp + 1], 0xc
adc ecx, eax
mov edx, 0x3b23b2a5
mov eax, 0xdaa3da4
xor edx, edx
mov eax, ecx
pop edx
lea edx, [edx*8 - 0x30edf9dd]
mov edx, dword [edi + 8]
push 0x3ae948c
mov ecx, 0x8d35ea3d
mov dword [eax], edx
mov ecx, dword [ebp]
xor ecx, ebx
push 0xf8ab62f
mov edx, dword [esp + 3]
lea ecx, [ecx + edx - 0x2d89e57]
pop edx
rol ecx, 3
pop edx
or dx, dx
dec ecx
imul edx, edx
sbb dl, 0xb1
mov eax, edx
bswap ecx
bswap eax
xor ebx, ecx
add esi, ecx
bts edx, edx
call fcn.00d5e4a0
dec dword [esp + ecx - 0x63cc97c]
sub dl, 0xb1
shl ax, 0x69
and word [esp + ecx - 0x63cc97e], ax
setge cl
xor bl, dl
imul ecx, ecx
lea edx, [esp + edx + 8]
sal ecx, cl
adc byte [esp + eax - 0x9f9], ah
mov eax, dword [edx + eax*2 - 0x1400]
mov dword [ebp + 4], eax
sbb ebp, 0xfffffffb
dec dword [esp + 4]
mov eax, dword [esi - 5]
xor dword [esp + 4], ecx
xadd dword [esp + 4], ecx
sbb esi, 4
xor eax, ebx
mov edx, ecx
add eax, 0x26b2b4a1
and ecx, 0xe9a76429
not eax
sal ecx, 0xbe
inc eax
add dl, cl
dec dl
bswap eax
lea ecx, [edx + edx*8 - 0x136439e7]
xor eax, 0x5b301b24
rol byte [esp + 2], 0x82
xadd byte [esp + 4], cl
sbb eax, 0x9ab82584
rol ecx, 0xf1
add ecx, 0x61a9aa99
add dword [esp + ecx - 0x5ed121b5], ecx
rol eax, 1
not edx
mov byte [esp + ecx - 0x5ed121b1], ch
neg cx
xor eax, 0xa21bf411
not eax
neg ecx
sub word [esp + edx - 0x3e56a46d], cx
shr ecx, cl
dec eax
xor ecx, 0x4b90923a
bt ecx, ecx
rol cl, 0xc7
rol eax, 1
sal cl, 0xc7
xor eax, 0x3a4789c
ror eax, 2
shl byte [esp + edx - 0x3e56a46b], 0xa6
shr byte [esp + ecx - 0x4b90927e], 0x26
xor ebx, eax
rol cl, 0x24
sal dword [esp + ecx - 0x4b909204], cl
rol edx, cl
adc edi, eax
lea edx, [ecx*2 + 0x532a362b]
mov dword [esp + ecx - 0x4b909208], edi
ret 4
mov ebp, 0x223156ab
inc ecx
mov esp, 0x81a8c012
inc bp
mov dword [ecx + ecx - 0xe213], esi
inc ebp
movsx edi, sp
dec esi
lea edx, [ecx + edx - 0xe217]
inc ebp
mov eax, dword [edx + ecx - 0xe213]
or ecx, esi
dec esi
lea ecx, [edi*8 + 0xe5aa0]
dec eax
xor ecx, 0x8119fd0e
inc ebp
xor eax, ebx
call fcn.009795b3
inc ecx
inc bh
inc edx
bswap edx
inc ecx
push ebx
inc cx
neg eax
inc esi
dec ecx
shr edi, cl
xor dword [esp + eax - 0x22340000], edx
dec ebx
lea ebp, [esi + eax*2 + 0x2823582a]
dec ebp
and eax, esi
inc ecx
pop ebx
dec eax
shl ecx, 0xc2
dec eax
arpl dx, dx
inc ecx
adc ebp, esi
dec eax
lea ebp, [esi*2 - 0x5b73cadd]
dec eax
btr ecx, esi
dec eax
add ebx, edx
dec esp
xor eax, ebx
inc ecx
jmp eax
sub ecx, 0x65b7bf22
adc edx, 0x26b2b4a0
movzx eax, cl
sar al, cl
shr eax, 0xa3
not edx
not ecx
inc edx
ror al, 6
btc ax, ax
and cl, 0x99
bswap edx
btr ax, 0x3e
xor edx, 0x5b301b24
sub edx, 0x9ab82584
add eax, eax
btr eax, eax
rol edx, 1
lea ecx, [eax + ecx*4 - 0x355d0d60]
bt eax, eax
xor edx, 0xa21bf411
sal al, cl
lea ecx, [ecx*8 + 0x16b780bb]
jns 0xe022f9
not edx
btc eax, eax
dec edx
dec cx
btc cx, 0x87
rol edx, 1
sal cx, cl
setnp al
inc cx
xor edx, 0x3a4789c
add eax, eax
lea eax, [eax + ecx*2 + 0x5ca5fd86]
ror edx, 2
lea ecx, [ecx + ecx*4 - 0x2ff18843]
bts ecx, ecx
xor ebx, edx
sub ax, 0xb5bc
adc eax, ecx
adc edi, edx
ror eax, cl
shr cl, cl
sal eax, cl
movzx ecx, byte [esi + ecx*2 - 0x37e57e0b]
movsx edx, ax
ror edx, 0x8f
btc dx, 0x20
lea esi, [esi + eax - 0x72de8af5]
xor cl, bl
rol cl, 1
div dl
xadd eax, edx
rol edx, 0xa1
neg cl
xadd al, dh
cwd
bts ax, ax
sbb cl, 0x11
xor cl, 0x25
xor bl, cl
sub edx, eax
btr edx, edx
rol eax, 0x8d
adc ecx, esp
mov edx, dword [eax + ecx - 0x1137118]
mov dword [ebp + eax - 0x113711c], edx
mov eax, dword [eax + ebp - 0x113711c]
mov ecx, 0x969f9f3b
bt cx, cx
push ecx
mov cl, byte [ebp]
mov edx, 0x1098d185
sal edx, 0x98
shr eax, cl
inc byte [esp + 3]
call fcn.00ca42e4
mov esi, 0xcda6e213
inc ecx
mov ecx, 0xf8169a26
inc ebp
movsx eax, cx
dec ebp
mov ecx, dword [ebp]
or si, si
inc bp
mov esi, dword [ebp + 8]
movzx ecx, si
dec esi
lea ebp, [ecx + ebp - 0xe209]
jle 0xd561e4
mov edx, 0xc3d5ea9
lea esi, [edx + esi - 0xc3d5eaa]
movsx ecx, dl
lea eax, [ecx + edx*8 - 0x68798bee]
movzx ecx, byte [esi + edx - 0xc3d5ea9]
xor cl, bl
xor cl, bl
and al, dh
jge 0x97bf17
inc ebp
test dword [ecx - 0x2e], ebp
pop es
insb byte es:[edi], dx
or edx, esi
out dx, al
lds ebx, [edx]
in al, dx
pop ecx
loop 0xd881bf
lds ebx, [edx]
in al, dx
or dword [edx - 0x13e53a3a], ebp
ror dword [edx + 0x2e], 1
lds ebx, [edx]
in al, dx
std
pop edx
push es
lds ebx, [edx]
in al, dx
fnstcw word [edx]
into
lds ebx, [edx]
in al, dx
ljmp 0x6e5d
mov dword [esp], 0xf055f9bd
call fcn.00d796d6
mov edx, dword [esi - 4]
xor edx, ebx
mov ecx, 0x409ccf28
jmp 0xd8805a
bswap eax
lea edx, [eax + eax + 0x7f0abc3d]
mov ecx, dword [ebp]
imul eax
sbb dx, 0x7c8e
not edx
lea ebp, [ebp + eax - 0x530d4dfd]
bts dx, 0xf
bswap eax
xor ecx, ebx
cwd
imul al
not ecx
add edx, 0x1697652a
lea edx, [edx + eax + 0x57bb90b4]
neg ecx
imul eax
and edx, edx
shr edx, 1
lea ecx, [edx + ecx - 0x68a4680f]
ror ecx, 2
xor ebx, ecx
and eax, edx
ror al, 1
xchg dh, dl
add esi, ecx
shr al, 0xc2
xchg edx, eax
inc eax
mov ecx, dword [edi + eax - 0x5db]
rol ax, 0x83
mov ax, word ss:[ecx + eax - 0x2ed8]
xor edx, edx
lea edi, [edi + edx + 2]
movzx ecx, dx
mov word [edx + edi], ax
push edx
jl 0xdb2715
pop ecx
add edx, esi
jmp edx