Function at 0x4415a0
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x14
mov esi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
mov ax, word [0x4825c4]
cwde
not eax
mov ecx, dword [0x490634]
and ecx, eax
xor ecx, 0xa926bf96
and dword [0x490a34], ecx
mov eax, dword [0x49be78]
not eax
and eax, 0x61897996
mov ecx, dword [0x499db8]
imul ecx, eax
mov dword [0x499db8], ecx
mov eax, dword [0x48f0ec]
lea ecx, [eax - 1]
mov dword [0x48f0ec], ecx
add eax, 0x91c7e61d
mov ecx, dword [0x498e14]
imul ecx, eax
mov dword [0x498e14], ecx
mov ax, word [0x483426]
and eax, 0x70d8
mov word [0x483426], ax
lea eax, [esi + 4]
mov dword [esp], eax
call fcn.0044eba5
or dword [0x49536c], 0xb88e91aa
mov edx, dword [0x499c14]
inc edx
mov dword [0x499c14], edx
mov ecx, dword [0x48aa10]
not ecx
or ecx, edx
cmp ecx, 0xc613cc7f
jne 0x441658
add dword [0x48ba44], 0x8e65fb30
mov dword [esp + 0xc], eax
jmp 0x441697
mov cx, word [0x489a2c]
add ecx, 0x5531
mov word [0x489a2c], cx
mov ebx, dword [eax - 3]
add eax, 0xfffffffd
mov word [0x484e46], 0
add dword [0x49b0e4], 0xbbed7da8
or dword [0x498cd0], 0x296ff8dc
mov ebp, eax
mov eax, dword [0x4942a0]
add eax, 0xee3681fe
cmp eax, 0x656a7a4e
jg 0x4416d0
mov eax, dword [0x491244]
or eax, 0x289ff818
xor eax, 0x130001a4
cmp eax, 0xde7a0a63
jl 0x4416f0
mov dword [0x4996dc], 0x68dfa3bd
jmp 0x441701
mov eax, dword [0x49b870]
cmp eax, 0xd5963715
jne 0x441701
and dword [0x48d2f0], 0x8c2d70
jmp 0x441701
mov ax, word [0x484588]
xor eax, 0xfbeb
mov word [0x484588], ax
mov al, byte [ebx + section..data]
mov byte [ebp], al
mov eax, dword [0x48bcc8]
cmp eax, 0x99b29e76
jl 0x441738
mov ax, word [0x480fd6]
lea ecx, [eax - 1]
mov word [0x480fd6], cx
cwde
imul eax, eax, 0x309b799d
and eax, 0xdb0f1de
xor dword [0x49d00c], eax
mov eax, dword [0x49d998]
mov al, byte [eax + ebx]
xor byte [ebp], al
mov eax, dword [0x497f3c]
sar eax, 5
imul eax, eax, 0xf512c62d
add eax, 0xcd811504
cmp eax, 0xb2a1c8af
jg 0x441775
mov eax, dword [0x49baa4]
shr eax, 6
mov cx, word [0x484022]
sub ecx, eax
mov word [0x484022], cx
mov ax, word [0x489510]
cwde
mov ecx, dword [0x49cc60]
not ecx
and ecx, eax
and ecx, 0xb021baeb
cmp ecx, 0x945224a
jg 0x4417c0
mov dword [esp + 0x10], esi
mov ax, word [0x48450c]
cwde
mov ecx, dword [0x48ccec]
inc ecx
xor eax, ecx
mov dword [0x48ccec], ecx
xor eax, 0xaa343fad
mov dword [0x49b744], eax
jmp 0x4417d5
mov dword [esp + 0x10], esi
mov ax, word [0x486712]
and eax, 0xf3f9
mov word [0x486712], ax
xor dword [0x49846c], 0xa28a1212
mov al, byte [ebx + 0x476001]
mov byte [ebp + 1], al
xor dword [0x48ed84], 0x9c4a59b4
mov eax, dword [0x49d998]
mov al, byte [eax + ebx + 1]
xor byte [ebp + 1], al
or dword [0x493c28], 0x185e611b
xor dword [0x497d48], 0x2d96c4b7
mov eax, dword [0x48c2a0]
mov word [0x486f0a], ax
movzx esi, word [ebp]
mov eax, dword [0x492d54]
imul eax, eax, 0x6609a391
add eax, 0x6a5e
mov cx, word [0x484490]
and ecx, eax
mov word [0x484490], cx
lea eax, [ebx + 0x476002]
lea edi, [esi + 3]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.0044de00
mov eax, dword [0x499f7c]
mov ecx, dword [0x49633c]
and ecx, eax
and ecx, 0xcd15f87b
mov dword [0x49633c], ecx
mov eax, dword [0x496210]
mov ecx, dword [0x491cbc]
lea eax, [eax + ecx + 0x4a912bd9]
mov dword [0x491cbc], eax
mov eax, dword [0x493e30]
lea ecx, [eax + 1]
mov dword [0x493e30], ecx
cmp eax, 0x74ca8f50
jl 0x4418a9
mov dword [0x48dc2c], 0x82d7a65c
add ebx, 2
mov ecx, dword [0x49d998]
mov eax, dword [0x495514]
or eax, 0xa70c798e
mov edx, dword [0x48c6bc]
sar edx, 3
xor edx, 0x9d0bb167
cmp eax, edx
je 0x4418d9
or dword [0x4924c0], 0x534a73a
lea eax, [ebp + esi + 3]
add ecx, ebx
nop
dec dword [0x496e24]
mov dl, byte [ecx]
xor byte [ebp], dl
xor dword [0x48f058], 0x57500bdf
inc ebp
inc ecx
dec edi
jne 0x4418e0
mov cx, word [0x488c0a]
not ecx
imul ecx, ecx, 0x5337
and ecx, 0xfffff74b
mov dx, word [0x48a17c]
or edx, ecx
mov word [0x48a17c], dx
mov ecx, dword [esp + 0x10]
sub ecx, esi
mov esi, ecx
je 0x44198f
mov cx, word [0x487588]
imul ecx, ecx, 0xffffede6
mov word [0x487588], cx
mov byte [eax], 0
mov ecx, dword [0x49b0d0]
mov ecx, dword [0x49bed8]
lea edx, [ecx - 1]
mov dword [0x49bed8], edx
cmp ecx, 0x65c21eec
jne 0x441980
mov cx, word [0x4815e2]
or ecx, 0x6689
mov word [0x4815e2], cx
jmp 0x441660
add dword [0x48ef4c], 0x5364524c
jmp 0x441660
or dword [0x49b438], 0xd380aa12
mov eax, dword [esp + 0xc]
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret