Function at 0x41da50
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x50
mov eax, dword [0x44ab88]
mov dword [esp + 0xc], 0x4f8f4d8d
mov dword [esp + 0x10], 0x4bd849de
mov dword [esp + 0x14], 0x47e745f6
mov dword [esp + 0x18], 0x43e341ca
mov dword [esp + 0x1c], 0x3f983d9d
mov dword [esp + 0x20], 0x3ba03992
mov dword [esp + 0x24], 0x37a235b5
mov dword [esp + 0x28], 0x33af31aa
mov dword [esp + 0x2c], 0x2f8e2da0
mov dword [esp + 0x30], 0x2bba29b5
mov dword [esp + 0x34], 0x278025b6
mov dword [esp + 0x38], 0x23b22196
mov dword [esp + 0x3c], 0x1f821db3
mov dword [esp + 0x40], 0x1b8c1985
mov dword [esp + 0x44], 0x17991585
mov word [esp + 0x48], 0x1116
mov dword [esp + 0x4a], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x41
ja 0x41db30
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0xc]
add ecx, 0xedcc9baf
xor ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 3
mov edx, dword [esp]
mov byte [esp + edx + 0xc], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x42
jb 0x41db00
lea ecx, [esp + 8]
lea ebx, [esp + 0xc]
push ecx
push 0
push 0
push 0x1e
push ebx
push 0
call eax
mov ebp, dword [esp + 8]
test ebp, ebp
jns 0x41db53
mov eax, 0xffffffff
jmp 0x41db5a
lea eax, [ebp*2]
push eax
call fcn.00409a00
add esp, 4
mov esi, eax
mov eax, dword [0x44ab88]
mov dword [esp + 0xc], 0x9c5e9e7c
mov dword [esp + 0x10], 0x9003920d
mov dword [esp + 0x14], 0x94369655
mov dword [esp + 0x18], 0x882a8a01
mov dword [esp + 0x1c], 0x8c238e6c
mov dword [esp + 0x20], 0x801b8239
mov dword [esp + 0x24], 0x84158614
mov dword [esp + 0x28], 0x78de7a21
mov dword [esp + 0x2c], 0x7cd97eef
mov dword [esp + 0x30], 0x70e572e4
mov dword [esp + 0x34], 0x74db76d5
mov dword [esp + 0x38], 0x68fd6ac5
mov dword [esp + 0x3c], 0x6cf56efa
mov dword [esp + 0x40], 0x60ff62f4
mov dword [esp + 0x44], 0x64f066c4
mov word [esp + 0x48], 0x5a65
mov dword [esp + 0x4a], 0
mov byte [esp + 0x4e], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x42
ja 0x41dc4c
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 0xc]
lea edi, [ecx + 0xe3]
add ecx, edx
and edi, edx
add edi, edi
sub ecx, edi
add ecx, 0xd1c818e3
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0x86
mov edx, dword [esp]
mov byte [esp + edx + 0xc], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x43
jb 0x41dc10
mov edi, dword [esp + 0x64]
lea ecx, [esp + 8]
push ecx
push ebp
push esi
push 0x1e
push ebx
push 0
call eax
mov dword [esp + 0xc], 0x3d963f8c
mov dword [esp + 0x10], 0x39a83ba7
mov dword [esp + 0x14], 0x258d2794
mov dword [esp + 0x18], 0x218c23ba
mov dword [esp + 0x1c], 0x2db02fb7
mov dword [esp + 0x20], 0x292a2b80
mov dword [esp + 0x24], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x1b
ja 0x41dcde
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 0xc]
add eax, 0xbdac3dc7
xor eax, ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add al, 9
mov ecx, dword [esp]
mov byte [esp + ecx + 0xc], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x1c
jb 0x41dcb0
push 0
push 0
push ebx
push esi
push edi
call fcn.004160e0
add esp, 0x14
jmp dword [0x4466c4]