Function at 0x41b441
Capabilities:
Check os version

Disassembly:
push 0x140
mov eax, 0x4389b5
call fcn.00433cb0
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x140], eax
xor esi, esi
push 0x110
lea eax, [ebp - 0x120]
push esi
push eax
mov dword [ebp - 4], esi
call sub.MSVCR80.dll_memset
add esp, 0xc
lea eax, [ebp - 0x124]
push eax
mov dword [ebp - 0x124], 0x114
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [ebp - 0x120], 6
mov ebx, dword [sym.imp.Common.dll_public:_void___thiscall_CTXStringW::destructor_void_]
mov dword [ebp - 0x144], esi
jb 0x41b4c3
cmp dword [ebp - 0x11c], 1
jae 0x41b4d6
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call ebx
mov eax, esi
call fcn.00433d33
ret 0x14
push esi
mov esi, dword [sym.imp.Common.dll_public:_int___thiscall_CTXStringW::Find_wchar_t__int_const]
push 0x20
lea ecx, [ebp + 8]
call esi
lea edi, [eax + 1]
push edi
push 0x5f
lea ecx, [ebp + 8]
mov dword [ebp - 0x12c], eax
call esi
mov dword [ebp - 0x130], eax
sub eax, dword [ebp - 0x12c]
lea ecx, [ebp + 8]
dec eax
push eax
push edi
mov edi, dword [sym.imp.Common.dll_public:_class_CTXStringW___thiscall_CTXStringW::Mid_int__int_]
lea eax, [ebp - 0x138]
push eax
call edi
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x12c], eax
inc eax
push eax
push 0x5f
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
mov dword [ebp - 0x128], eax
call esi
mov dword [ebp - 0x130], eax
sub eax, dword [ebp - 0x12c]
lea ecx, [ebp + 8]
dec eax
push eax
push dword [ebp - 0x128]
lea eax, [ebp - 0x134]
push eax
call edi
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x12c], eax
inc eax
push eax
push 0x5f
lea ecx, [ebp + 8]
mov byte [ebp - 4], 2
mov dword [ebp - 0x128], eax
call esi
mov dword [ebp - 0x130], eax
sub eax, dword [ebp - 0x12c]
lea ecx, [ebp + 8]
dec eax
push eax
push dword [ebp - 0x128]
lea eax, [ebp - 0x128]
push eax
call edi
mov ecx, dword [ebp - 0x13c]
mov esi, dword [sym.imp.Common.dll_public:_class_CTXStringW____thiscall_CTXStringW::operator_class_CTXStringW_const__]
push eax
mov byte [ebp - 4], 3
call esi
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 2
call ebx
mov eax, dword [ebp - 0x130]
lea ecx, [ebp + 8]
mov dword [ebp - 0x12c], eax
call dword [sym.imp.Common.dll_public:_int___thiscall_CTXStringW::GetLength_void_const]
mov ecx, dword [ebp - 0x12c]
sub eax, ecx
dec eax
push eax
inc ecx
push ecx
lea eax, [ebp - 0x128]
push eax
lea ecx, [ebp + 8]
call edi
mov ecx, dword [ebp - 0x140]
push eax
mov byte [ebp - 4], 4
call esi
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 2
call ebx
mov esi, dword [sym.imp.Common.dll_public:_bool___thiscall_CTXStringW::IsEmpty_void_const]
lea ecx, [ebp - 0x138]
call esi
test al, al
jne 0x41b673
lea ecx, [ebp - 0x134]
call esi
test al, al
jne 0x41b673
mov ecx, dword [ebp - 0x13c]
call esi
test al, al
jne 0x41b673
mov ecx, dword [ebp - 0x140]
call esi
test al, al
jne 0x41b673
push dword [ebp - 0x148]
mov esi, dword [sym.imp.Common.dll_public:_wchar_t_const____thiscall_CTXStringW::operator_wchar_t_const__void_const]
lea ecx, [ebp - 0x138]
call esi
mov edi, dword [sym.imp.Common.dll_Ordinal_34]
push eax
call edi
test al, al
pop ecx
pop ecx
je 0x41b673
push dword [ebp - 0x14c]
lea ecx, [ebp - 0x134]
call esi
push eax
call edi
test al, al
pop ecx
pop ecx
je 0x41b673
mov dword [ebp - 0x144], 1
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 1
call ebx
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0
call ebx
mov esi, dword [ebp - 0x144]
jmp 0x41b4c3