Function at 0x411100
Capabilities:
Encode data using xor

Disassembly:
mov ax, word [0x48a322]
lea ecx, [eax - 1]
mov word [0x48a322], cx
cwde
mov ecx, 0x431f9424
sub ecx, eax
mov dword [0x496e14], ecx
mov eax, dword [0x49f59c]
test eax, eax
jne 0x41154a
push ebp
push ebx
push edi
push esi
sub esp, 0x2dc
mov ax, word [0x4889a6]
add eax, 0xffffa15e
mov word [0x4889a6], ax
xor dword [0x49e4dc], 0x60f64e00
and dword [0x49a648], 0x5d5440da
mov eax, dword [0x49c174]
imul eax, eax, 0xbe4b1eef
mov dword [0x49c174], eax
or dword [0x48e634], 0xd558ab3d
xor dword [0x495340], 0x9e2ccea7
lea ebx, [esp + 0xe]
mov dword [esp], ebx
mov dword [esp + 4], 0x49edd4
call fcn.004506c0
mov ax, word [0x48a0e6]
dec eax
mov word [0x48a0e6], ax
cwde
add eax, 0x94279727
mov ecx, dword [0x4912ac]
not ecx
and ecx, eax
cmp ecx, 0x5ff52ed6
jl 0x4111bd
dec dword [0x49b1d8]
mov dword [0x48d340], 0x7f9ffffd
mov dword [esp], ebx
call fcn.0044d600
mov esi, eax
mov dword [0x48e650], 0x1080008
mov dword [esp], 0x45e
call dword [0x481160]
sub esp, 4
mov eax, dword [0x48d110]
imul eax, eax, 0x408f3a0
or dword [0x49904c], eax
mov byte [esp + esi + 0xe], 0
mov word [0x489dca], 0x1198
mov eax, dword [0x49f5b8]
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.004506d0
mov eax, dword [0x491704]
not eax
and eax, 0x9e7b2f12
mov ecx, dword [0x495354]
lea edx, [ecx + 1]
mov dword [0x495354], edx
mov edx, dword [0x49e9dc]
sar edx, 8
imul edx, edx, 0x5a9cac21
lea ecx, [edx + ecx + 1]
cmp eax, ecx
je 0x41125e
mov ax, word [0x488ef2]
add eax, 0x3b80
mov word [0x488ef2], ax
mov dword [esp + 4], 2
mov dword [esp], 0x5693
call fcn.004102b0
mov edi, eax
mov eax, dword [0x48fdfc]
cmp eax, 0x180008
je 0x4112ba
mov eax, dword [0x492030]
shl eax, 7
or eax, 0xedf3e378
mov cx, word [0x48a352]
movsx ecx, cx
mov edx, 0x7537f31f
sub edx, ecx
xor edx, 0x9db5d3b3
cmp eax, edx
jle 0x4112b0
dec dword [0x49cabc]
jmp 0x4112ba
or dword [0x49d4d0], 0xccdd5707
mov dword [esp + 8], esi
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.004506d0
mov ax, word [0x484892]
cwde
imul eax, eax, 0x95b6e500
add dword [0x491af8], eax
mov ax, word [0x488bec]
add eax, 0x4f00
mov word [0x488bec], ax
and dword [0x48bff0], 0x5d81701d
mov eax, dword [0x48c5e0]
sar eax, 2
add eax, 0xfba83a0d
cmp eax, 0x77f7eff7
jg 0x411323
mov eax, dword [0x49e6cc]
mov ecx, dword [0x49d8b8]
lea eax, [eax + ecx + 0x6162c15f]
mov dword [0x49d8b8], eax
mov byte [edi], 0
mov byte [edi + 1], 0
mov byte [edi + 2], 0
mov byte [edi + 3], 0
mov byte [edi + 4], 0
mov byte [edi + 5], 0
mov eax, dword [0x495f28]
mov eax, dword [0x48f420]
not eax
mov ecx, dword [0x496908]
mov edx, dword [0x49d940]
lea ebx, [edx - 1]
mov dword [0x49d940], ebx
imul ecx, edx
or ecx, eax
xor dword [0x494960], ecx
mov dword [esp], edi
call fcn.0044d4f0
mov ax, word [0x4834ec]
add eax, 0xffffe640
mov word [0x4834ec], ax
mov eax, dword [0x48c374]
dec eax
mov dword [0x48c374], eax
mov ecx, dword [0x48b428]
imul ecx, eax
mov dword [0x48b428], ecx
lea ebx, [esp + 0x19c]
mov dword [esp + 4], ebx
lea esi, [esp + 0xe]
mov dword [esp], esi
call dword [0x4810c0]
sub esp, 8
mov edi, eax
mov ax, word [0x48579c]
imul eax, eax, 0x2376
mov word [0x48579c], ax
cmp edi, 0xffffffff
je 0x4114c6
mov eax, dword [0x494964]
add dword [0x48d168], 0x3df7fbfc
mov ebp, dword [esp + 8]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov dword [0x48ef94], 0x615d9b44
mov byte [esp + ebp + 0xe], 0
mov eax, dword [0x49c490]
xor eax, 0xca813619
add dword [0x4938fc], eax
lea eax, [esp + 0x1c8]
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.004506d0
mov ax, word [0x4880b6]
inc eax
mov word [0x4880b6], ax
mov dword [0x4967e8], 0x4d5884fc
mov dword [esp], esi
call dword [0x4810b0]
sub esp, 4
mov ax, word [0x483dd6]
lea ecx, [eax - 1]
mov word [0x483dd6], cx
mov cx, word [0x489178]
or ecx, eax
mov word [0x489178], cx
mov dword [esp + 4], ebx
mov dword [esp], edi
call dword [0x4810bc]
sub esp, 8
test eax, eax
jne 0x4113f0
mov eax, dword [0x493428]
or eax, 0x3d9fa216
mov ecx, dword [0x490940]
xor ecx, eax
xor ecx, 0xc2605de9
mov dword [0x490940], ecx
mov dword [esp], edi
call dword [0x4810b8]
sub esp, 4
mov eax, dword [0x48f4bc]
lea ecx, [eax - 1]
mov dword [0x48f4bc], ecx
cmp eax, 0xde9a1cd5
je 0x4114c6
mov dword [0x49593c], 0x57cda777
mov eax, dword [0x49079c]
imul eax, eax, 0x3e2e86be
mov dword [0x49079c], eax
and dword [0x48bff0], 0x5d81701d
mov ecx, dword [0x48c5e0]
sar ecx, 2
add ecx, 0xfba83a0d
xor eax, eax
cmp ecx, 0x77f7eff7
jg 0x411520
mov ecx, dword [0x49e6cc]
mov edx, dword [0x49d8b8]
lea ecx, [ecx + edx + 0x6162c15f]
mov dword [0x49d8b8], ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [esp + eax + 0xe], 0
inc eax
cmp eax, 0x18e
jne 0x411520
mov eax, dword [0x48fa70]
sar eax, 7
or eax, 0x171e7dc4
add dword [0x494474], eax
add esp, 0x2dc
pop esi
pop edi
pop ebx
pop ebp
ret