Function at 0x44697a
Capabilities:
Check os version

Disassembly:
push 0x908
mov eax, 0x4aa019
call fcn.00453742
mov edi, ecx
call fcn.004453c9
test eax, eax
jne 0x44699b
xor eax, eax
jmp 0x446ed4
mov ecx, edi
call fcn.004474f8
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.0044fe6c
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.004192e5
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 0x446a6d
mov ecx, dword [edi + 0x260]
movzx eax, word [ecx + 0x44]
push eax
lea eax, [ebp - 0x840]
push eax
call fcn.0042a3ca
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 [0x4ef824], ecx
call fcn.0044fd51
pop ecx
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x840]
call fcn.00401b80
jmp 0x446994
mov eax, dword [edi + 0x260]
cmp dword [eax + 0x50], 1
jbe 0x446e5e
cmp dword [edi + 0xc], 5
je 0x446e5e
push 0x400
lea eax, [ebp - 0x810]
push ebx
push eax
call fcn.004526c0
push 0xa
lea eax, [ebp - 0x810]
push eax
mov eax, dword [edi + 0x260]
movzx eax, word [eax + 0x44]
push eax
call fcn.004568c3
cmp dword [0x4eefb0], 8
mov eax, 0x4eef9c
cmovae eax, dword [0x4eef9c]
push eax
lea eax, [ebp - 0x810]
push eax
call fcn.0045472d
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 0x446b02
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.004439cd
mov esi, eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x870]
call fcn.00401ac0
test esi, esi
je 0x446c61
cmp byte [0x4eb428], 0
jne 0x446b35
cmp byte [0x4f0b20], 0
je 0x446ba8
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.0041904e
push 0x400
lea ecx, [ebp - 0x914]
push ecx
mov ecx, eax
call fcn.00415f67
mov dword [ebp - 4], 8
mov ecx, dword [eax]
mov byte [eax + 4], 1
call fcn.00415f0c
lea ecx, [ebp - 0x810]
push ecx
push 0x4ef000
push dword [eax]
call fcn.0044f76c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x914]
call fcn.00411bac
mov ecx, edi
call fcn.00443ea3
test eax, eax
je 0x446994
push esi
lea eax, [ebp - 0x870]
push eax
mov ecx, edi
call fcn.00419d63
mov dword [ebp - 4], 9
add eax, 4
cmp dword [eax + 0x14], 8
jb 0x446c37
mov eax, dword [eax]
push 1
push eax
push str._LangTransform
mov ecx, edi
call fcn.00442b58
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x870]
call fcn.00401b80
mov dword [edi + 0x34], 1
jmp 0x446e5e
cmp byte [edi + 0x25c], 0
je 0x446d22
push 1
lea eax, [ebp - 0x8f9]
push eax
lea eax, [ebp - 0x810]
push eax
lea ecx, [ebp - 0x870]
call fcn.004115c6
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.004115c6
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x870]
push ecx
lea ecx, [ebp - 0x840]
push ecx
mov ecx, eax
call fcn.0042017f
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.0041c39c
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.00442b58
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x840]
jmp 0x446dd4
mov ecx, edi
call fcn.00445de0
test al, al
je 0x446d97
mov ecx, edi
call fcn.0044600d
test al, al
je 0x446d97
lea eax, [ebp - 0x900]
push eax
lea ecx, [edi + 4]
mov dword [ebp - 0x900], 6
call fcn.0041904e
push 0x400
lea ecx, [ebp - 0x914]
push ecx
mov ecx, eax
call fcn.00415f67
mov dword [ebp - 4], 0x13
mov ecx, dword [eax]
mov byte [eax + 4], 1
call fcn.00415f0c
push dword [eax]
lea eax, [ebp - 0x810]
push eax
mov ecx, edi
call fcn.004444c3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x914]
call fcn.00411bac
jmp 0x446dd9
push 1
lea eax, [ebp - 0x8f9]
push eax
lea eax, [ebp - 0x810]
push eax
lea ecx, [ebp - 0x870]
call fcn.004115c6
mov dword [ebp - 4], 0x14
push ebx
lea eax, [ebp - 0x870]
push eax
push 6
mov ecx, edi
call fcn.0041c39c
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x870]
call fcn.00401b80
cmp byte [0x4eb428], 0
jne 0x446deb
cmp byte [0x4f0b20], 0
je 0x446e5e
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.00445a73
test eax, eax
je 0x446994
push 0x44f
mov ecx, edi
call fcn.004472b4
mov ecx, edi
call fcn.0044768d
test eax, eax
je 0x446994
push edi
push 0x451
lea ecx, [ebp - 0x8c8]
call fcn.0042bcd6
mov dword [ebp - 4], 0x1a
lea ecx, [ebp - 0x8c8]
call fcn.0042eccc
test eax, eax
je 0x446ec3
mov eax, dword [ebp - 0x8bc]
mov dword [edi + 0xb14], eax
call fcn.00429a26
xor ebx, ebx
inc ebx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x8c8]
call fcn.0042bf63
mov eax, ebx
call fcn.004536f1
ret