Function at 0x41ea40
Capabilities:
Encode data using xor

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x50
mov eax, dword [0x44ce10]
mov dword [esp + 8], 0x5b9b5d61
mov dword [esp + 0xc], 0x57a659a8
mov dword [esp + 0x10], 0x53b35588
mov dword [esp + 0x14], 0x6f8f51dc
mov dword [esp + 0x18], 0x6b8e6d51
mov dword [esp + 0x1c], 0x679e6984
mov dword [esp + 0x20], 0x639065e9
mov dword [esp + 0x24], 0x7f83619c
mov dword [esp + 0x28], 0x7b847df2
mov dword [esp + 0x2c], 0x77f87981
mov dword [esp + 0x30], 0x73967588
mov dword [esp + 0x34], 0xf8071a0
mov dword [esp + 0x38], 0xbf00dff
mov dword [esp + 0x3c], 0x7f209f1
mov dword [esp + 0x40], 0x38d05f9
mov word [esp + 0x44], 0x100
mov dword [esp + 0x46], 0
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x41
ja 0x41eb20
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 + 8]
add ecx, 0x772e1c12
xor ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0xb2
mov edx, dword [esp]
mov byte [esp + edx + 8], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x42
jb 0x41eaf0
lea ebx, [esp + 0x4c]
lea edi, [esp + 8]
push ebx
push 0
push 0
push 0x1e
push edi
push 0
call eax
mov ebp, dword [esp + 0x4c]
test ebp, ebp
jns 0x41eb43
mov eax, 0xffffffff
jmp 0x41eb4a
lea eax, [ebp*2]
push eax
call fcn.004096b0
add esp, 4
mov esi, eax
mov eax, dword [0x44ce10]
mov dword [esp + 8], 0x75357753
mov dword [esp + 0xc], 0x79087b0a
mov dword [esp + 0x10], 0x7d1d7f3a
mov dword [esp + 0x14], 0x81e183f6
mov dword [esp + 0x18], 0x85d887a3
mov dword [esp + 0x1c], 0x89e08bde
mov dword [esp + 0x20], 0x8dfe8ffb
mov dword [esp + 0x24], 0x91f593f6
mov dword [esp + 0x28], 0x95f297e0
mov dword [esp + 0x2c], 0x99ee9bf3
mov dword [esp + 0x30], 0x9dc09ffa
mov dword [esp + 0x34], 0xa1d6a3f2
mov dword [esp + 0x38], 0xa5cea7d5
mov dword [esp + 0x3c], 0xa9c4abc3
mov dword [esp + 0x40], 0xaddbafcb
mov dword [esp + 0x44], 0xb3b2
mov dword [esp], 0
mov ecx, dword [esp]
cmp ecx, 0x3f
ja 0x41ec20
nop
nop
nop
nop
nop
nop
nop
mov ecx, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 8]
add ecx, 0x143566f4
xor ecx, edx
mov dword [esp + 4], ecx
mov ecx, dword [esp + 4]
add cl, 0x7e
mov edx, dword [esp]
mov byte [esp + edx + 8], cl
inc dword [esp]
mov ecx, dword [esp]
cmp ecx, 0x40
jb 0x41ebf0
push ebx
push ebp
push esi
push 0x1e
push edi
push 0
call eax
mov dword [esp + 8], 0x13fa6d98
mov dword [esp + 0xc], 0x17841185
mov dword [esp + 0x10], 0x1bff15f0
mov dword [esp + 0x14], 0x1ff8198e
mov dword [esp + 0x18], 0x3941df5
mov dword [esp + 0x1c], 0x70601e4
mov dword [esp + 0x20], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0x1b
ja 0x41ecbb
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov ecx, dword [esp]
movzx ecx, byte [esp + ecx + 8]
lea edx, [eax + ecx]
add eax, 0xbe
and eax, ecx
add eax, eax
sub edx, eax
add edx, 0x93960dbe
mov dword [esp + 4], edx
mov eax, dword [esp + 4]
add al, 0x2e
mov ecx, dword [esp]
mov byte [esp + ecx + 8], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0x1c
jb 0x41ec80
push 0
push 0
push edi
push esi
push dword [esp + 0x74]
call fcn.00416110
add esp, 0x14
jmp dword [0x44887c]