Function at 0x41ba7a
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24
push ebx
mov ebx, ecx
push esi
push edi
push 0
mov dword [ebx + 0x94], 0x430a80
mov eax, dword [ebx + 0x94]
mov dword [ebx + 0xa0], 0x431d08
mov dword [ebx + 4], 0x438490
mov dword [ebx + 0x88], vtable.RefCount.0
mov dword [ebx + 0x90], vtable.ConMan.0
mov eax, dword [eax + 4]
mov dword [esp + 0x24], ebx
mov dword [eax + ebx + 0x94], 0x4384e0
mov eax, dword [ebx + 0xa0]
mov dword [ebx + 0x9c], vtable.Exec.1.0
mov eax, dword [eax + 4]
mov dword [eax + ebx + 0xa0], vtable.Exec.0
call dword [sym.imp.system.dll_public:_void___thiscall_Object::constructor_void_]
mov eax, dword [ebx + 4]
lea esi, [ebx + 0x10]
mov dword [ebx], vtable.Libraries::License::Locale::Language.0
lea edi, [esp + 0x24]
mov word [esp + 0x2c], 0x65e6
mov word [esp + 0x29], 0xbd29
mov eax, dword [eax + 4]
mov dword [esp + 0x24], 0x1c68c326
mov byte [esp + 0x2b], 0x6e
mov byte [esp + 0x28], 0x99
mov dword [eax + ebx + 4], vtable.Libraries::License::Locale::Language.3.0
mov eax, dword [ebx + 4]
mov byte [esp + 0x2e], 0x69
mov eax, dword [eax + 8]
mov dword [eax + ebx + 4], vtable.Libraries::License::Locale::Language.1.0
mov eax, dword [ebx + 4]
mov eax, dword [eax + 0xc]
mov dword [eax + ebx + 4], vtable.Libraries::License::Locale::Language.2.0
mov eax, dword [ebx + 4]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x84]
mov dword [ecx + ebx], eax
mov eax, dword [ebx + 4]
mov ecx, dword [eax + 8]
lea eax, [ecx - 0x8c]
mov dword [ecx + ebx], eax
mov eax, dword [ebx + 4]
mov ecx, dword [eax + 0xc]
lea eax, [ecx - 0x98]
mov dword [ecx + ebx], eax
xor eax, eax
mov dword [ebx + 0xc], eax
mov dword [esi], eax
mov word [ebx + 0x80], ax
mov dword [esp + 0x18], eax
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.system.dll_public:_static_class_Ref_class_String____cdecl_String::create_void_]
mov bl, 0x44
mov bh, 0x62
pop ecx
mov byte [esp + 0x14], bl
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x1c]
push dword [esp + 0x14]
push edx
mov eax, dword [ecx]
call dword [eax + 0x2c]
push eax
lea ecx, [esp + 0x14]
call fcn.004052fc
lea ecx, [esp + 0x1c]
call fcn.00405291
add bh, bl
inc edi
mov bl, byte [edi]
xor bl, bh
mov byte [esp + 0x14], bl
jne 0x41bba4
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x1c]
call fcn.004052fc
lea ecx, [esp + 0x10]
call fcn.00405291
mov ecx, esi
call dword [sym.imp.system.dll_public_virtual:_void___thiscall_Object::lockRef_void_]
mov ebx, dword [esp + 0x20]
mov eax, dword [ebx + 4]
lea ecx, [ebx + 4]
add ecx, dword [eax + 8]
push ecx
mov eax, esp
mov dword [eax], ecx
je 0x41bc17
mov eax, dword [ecx + 4]
add ecx, 4
add ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [esp + 0x24]
push eax
call dword [sym.imp.system.dll_public:_static_class_Ref_class_Chn____cdecl_Chn::create_class_Ref_class_ConMan__]
mov esi, eax
pop ecx
pop ecx
mov edx, dword [esi]
test edx, edx
je 0x41bc3c
mov ecx, dword [edx + 4]
add edx, 4
mov ecx, dword [ecx + 4]
add ecx, edx
mov edx, dword [ecx]
call dword [edx + 4]
mov ecx, dword [ebx + 0xc]
test ecx, ecx
je 0x41bc51
mov eax, dword [ecx + 4]
add ecx, 4
add ecx, dword [eax + 4]
mov eax, dword [ecx]
call dword [eax + 8]
mov eax, dword [esi]
lea ecx, [esp + 0x20]
mov dword [ebx + 0xc], eax
call fcn.00405291
mov eax, dword [ebx + 4]
mov esi, dword [esp + 0x18]
push ecx
mov edi, dword [eax + 0xc]
mov eax, esp
add edi, 4
add edi, ebx
mov dword [eax], esi
test esi, esi
je 0x41bc87
mov eax, dword [esi + 4]
mov ecx, dword [eax + 4]
add ecx, 4
add ecx, esi
mov eax, dword [ecx]
call dword [eax + 4]
push 0x3000
push 0xa000
push 0xffffffffffffffff
push ecx
mov eax, esp
mov dword [eax], edi
test edi, edi
je 0x41bcac
mov eax, dword [edi + 4]
mov ecx, dword [eax + 4]
add ecx, 4
add ecx, edi
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [esp + 0x34]
push eax
call dword [sym.imp.system.dll_public:_static_class_Ref_class_Thd____cdecl_Thd::create_class_Ref_class_Exec___unsigned_int__unsigned_int__unsigned_int__class_Ref_class_String__]
add esp, 0x18
lea ecx, [ebx + 0x10]
push eax
call fcn.004052fc
lea ecx, [esp + 0x20]
call fcn.00405291
lea ecx, [ebx + 0x10]
call dword [sym.imp.system.dll_public_virtual:_void___thiscall_Object::unlockRef_void_]
mov ecx, dword [ebp + 0xc]
lea eax, [ebx + 0x14]
test ecx, ecx
je 0x41bd0a
mov eax, dword [ecx]
push 0
call dword [eax + 0xd4]
mov ecx, dword [ebp + 0xc]
mov edi, eax
lea eax, [ebx + 0x14]
push eax
mov edx, dword [ecx]
call dword [edx + 0x60]
mov edx, eax
mov ecx, edi
call fcn.0042183d
pop ecx
push edi
call fcn.0042f978
pop ecx
jmp 0x41bd1f
push eax
push ecx
push 0x130
push 0x432260
call fcn.0041be68
test al, al
je 0x41bd56
lea eax, [ebx + 0x38]
push eax
push ecx
push 0x12f
push 0x431fd0
call fcn.0041be68
test al, al
je 0x41bd56
lea eax, [ebx + 0x5c]
push eax
push ecx
push 0x131
push 0x432100
call fcn.0041be68
test al, al
je 0x41bd56
mov byte [ebx + 0x80], 1
test esi, esi
je 0x41bd6a
mov eax, dword [esi + 4]
mov ecx, dword [eax + 4]
add ecx, 4
add ecx, esi
mov eax, dword [ecx]
call dword [eax + 8]
lea ecx, [ebp + 0xc]
call fcn.00405291
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret 0xc