Function at 0x44649c
Capabilities:
Check os version

Disassembly:
push 0x908
mov eax, 0x4abcf5
call fcn.00473d21
mov edi, ecx
call fcn.00444eeb
test eax, eax
jne 0x4464bd
xor eax, eax
jmp 0x4469f6
mov ecx, edi
call fcn.0044701a
mov dword [edi + 0xb0c], eax
lea eax, [ebp - 0x908]
push eax
mov eax, dword [edi + 0x260]
xor ebx, ebx
mov dword [ebp - 0x908], ebx
movzx eax, word [eax + 0x44]
push eax
call fcn.0044f9d3
mov eax, dword [edi + 0x260]
push dword [ebp - 0x908]
movzx eax, word [eax + 0x44]
push eax
lea eax, [ebp - 0x904]
push str.Default_language:__d__got_code_page__d
push eax
mov dword [ebp - 0x904], str.session.cpp
mov dword [ebp - 0x900], 0x323
call fcn.004191b5
mov eax, dword [edi + 0x260]
add esp, 0x18
movzx eax, word [eax + 0x44]
push 1
push eax
call dword [sym.imp.KERNEL32.dll_IsValidLocale]
test eax, eax
jne 0x44658f
mov ecx, dword [edi + 0x260]
movzx eax, word [ecx + 0x44]
push eax
lea eax, [ebp - 0x840]
push eax
call fcn.0042a4fc
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x828], 8
lea eax, [ebp - 0x83c]
cmovae eax, dword [ebp - 0x83c]
mov ecx, 0x4b8
push eax
push ecx
mov dword [0x4f273c], ecx
call fcn.0044f8b8
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x840]
call fcn.00401b80
jmp 0x4464b6
mov eax, dword [edi + 0x260]
cmp dword [eax + 0x50], 1
jbe 0x446980
cmp dword [edi + 0xc], 5
je 0x446980
push 0x400
lea eax, [ebp - 0x810]
push ebx
push eax
call fcn.00474cd0
push 0xa
lea eax, [ebp - 0x810]
push eax
mov eax, dword [edi + 0x260]
movzx eax, word [eax + 0x44]
push eax
call fcn.00476f33
cmp dword [0x4f1ec8], 8
mov eax, 0x4f1eb4
cmovae eax, dword [0x4f1eb4]
push eax
lea eax, [ebp - 0x810]
push eax
call fcn.00474d9e
add esp, 0x20
lea eax, [ebp - 0x8f9]
push 1
push eax
lea eax, [ebp - 0x810]
push eax
lea ecx, [ebp - 0x870]
call fcn.00402ca0
mov dword [ebp - 4], 2
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x446624
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.00443599
mov esi, eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x870]
call fcn.00401ac0
test esi, esi
je 0x446783
cmp byte [0x4ee41c], 0
jne 0x446657
cmp byte [0x4f3b10], 0
je 0x4466ca
push 1
lea eax, [ebp - 0x8f9]
push eax
push str.session.cpp
lea ecx, [ebp - 0x870]
call fcn.00402ca0
mov dword [ebp - 4], 4
push 1
lea eax, [ebp - 0x8f9]
push eax
push str.Language_transforms_in_stream
lea ecx, [ebp - 0x840]
call fcn.00402ca0
mov byte [ebp - 4], 5
push 0x337
lea eax, [ebp - 0x870]
push eax
lea eax, [ebp - 0x840]
push eax
call fcn.00402940
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x840]
call fcn.00401ac0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x870]
call fcn.00401ac0
push 6
pop esi
lea eax, [ebp - 0x900]
push eax
lea ecx, [edi + 4]
mov dword [ebp - 0x900], esi
call fcn.00418f1e
push 0x400
lea ecx, [ebp - 0x914]
push ecx
mov ecx, eax
call fcn.00415e37
mov dword [ebp - 4], 8
mov ecx, dword [eax]
mov byte [eax + 4], 1
call fcn.00415ddc
lea ecx, [ebp - 0x810]
push ecx
push 0x4f1f18
push dword [eax]
call fcn.0044f2d3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x914]
call fcn.00411a7c
mov ecx, edi
call fcn.00443a6f
test eax, eax
je 0x4464b6
push esi
lea eax, [ebp - 0x870]
push eax
mov ecx, edi
call fcn.00419c33
mov dword [ebp - 4], 9
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x446759
mov eax, dword [eax]
push 1
push eax
push str._LangTransform
mov ecx, edi
call fcn.004426f7
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x870]
call fcn.00401b80
mov dword [edi + 0x34], 1
jmp 0x446980
cmp byte [edi + 0x25c], 0
je 0x446844
push 1
lea eax, [ebp - 0x8f9]
push eax
lea eax, [ebp - 0x810]
push eax
lea ecx, [ebp - 0x870]
call fcn.00411496
mov dword [ebp - 4], 0xb
push 1
lea eax, [ebp - 0x8f9]
push eax
lea eax, [edi + 0x4e]
push eax
lea ecx, [ebp - 0x8f8]
call fcn.00411496
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x870]
push ecx
lea ecx, [ebp - 0x840]
push ecx
mov ecx, eax
call fcn.0042006d
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x8f8]
call fcn.00401b80
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x870]
call fcn.00401b80
push ebx
lea eax, [ebp - 0x840]
push eax
push 6
mov ecx, edi
call fcn.0041c26c
cmp dword [ebp - 0x828], 8
lea eax, [ebp - 0x83c]
cmovae eax, dword [ebp - 0x83c]
push 1
push eax
push str._LangTransform
mov ecx, edi
call fcn.004426f7
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x840]
jmp 0x4468f6
mov ecx, edi
call fcn.00445902
test al, al
je 0x4468b9
mov ecx, edi
call fcn.00445b2f
test al, al
je 0x4468b9
lea eax, [ebp - 0x900]
push eax
lea ecx, [edi + 4]
mov dword [ebp - 0x900], 6
call fcn.00418f1e
push 0x400
lea ecx, [ebp - 0x914]
push ecx
mov ecx, eax
call fcn.00415e37
mov dword [ebp - 4], 0x13
mov ecx, dword [eax]
mov byte [eax + 4], 1
call fcn.00415ddc
push dword [eax]
lea eax, [ebp - 0x810]
push eax
mov ecx, edi
call fcn.0044409a
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x914]
call fcn.00411a7c
jmp 0x4468fb
push 1
lea eax, [ebp - 0x8f9]
push eax
lea eax, [ebp - 0x810]
push eax
lea ecx, [ebp - 0x870]
call fcn.00411496
mov dword [ebp - 4], 0x14
push ebx
lea eax, [ebp - 0x870]
push eax
push 6
mov ecx, edi
call fcn.0041c26c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x870]
call fcn.00401b80
cmp byte [0x4ee41c], 0
jne 0x44690d
cmp byte [0x4f3b10], 0
je 0x446980
push 1
lea eax, [ebp - 0x8f9]
push eax
push str.session.cpp
lea ecx, [ebp - 0x840]
call fcn.00402ca0
mov dword [ebp - 4], 0x16
push 1
lea eax, [ebp - 0x8f9]
push eax
push str.Using_language_transforms_from_setup.exe_location
lea ecx, [ebp - 0x870]
call fcn.00402ca0
mov byte [ebp - 4], 0x17
push 0x35e
lea eax, [ebp - 0x840]
push eax
lea eax, [ebp - 0x870]
push eax
call fcn.00402940
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x870]
call fcn.00401ac0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x840]
call fcn.00401ac0
mov ecx, edi
call fcn.00445595
test eax, eax
je 0x4464b6
push 0x44f
mov ecx, edi
call fcn.00446dd6
mov ecx, edi
call fcn.004471af
test eax, eax
je 0x4464b6
push edi
push 0x451
lea ecx, [ebp - 0x8c8]
call fcn.0042be08
mov dword [ebp - 4], 0x1a
lea ecx, [ebp - 0x8c8]
call fcn.0042ee69
test eax, eax
je 0x4469e5
mov eax, dword [ebp - 0x8bc]
mov dword [edi + 0xb14], eax
call fcn.00429b58
xor ebx, ebx
inc ebx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x8c8]
call fcn.0042c095
mov eax, ebx
call fcn.00473cd0
ret