Function at 0x418c5e
Capabilities:
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x224
push ebx
push esi
push edi
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
push dword [ebp + 8]
mov byte [0x437bf0], al
call fcn.0041c18b
movsx ax, byte [0x437bee]
sub ax, word [0x437bf6]
mov esi, dword [0x4313f8]
pop ecx
dec eax
push 3
mov word [0x437bfa], ax
mov al, byte [esi]
add al, 0x16
pop ebx
movzx eax, al
push 0xfffffffffffffffc
add eax, ebx
pop edi
and eax, edi
call fcn.0042c5d0
mov ecx, esp
mov edx, esi
call fcn.004298e5
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push esi
mov ecx, 0x438108
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
mov esi, dword [0x4313fc]
mov al, byte [esi]
add al, 0x16
movzx eax, al
add eax, ebx
and eax, edi
call fcn.0042c5d0
mov ecx, esp
mov edx, esi
call fcn.004298e5
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push esi
mov ecx, 0x4380a0
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
mov esi, dword [0x431400]
mov al, byte [esi]
add al, 0x16
movzx eax, al
add eax, ebx
and eax, edi
call fcn.0042c5d0
mov ecx, esp
mov edx, esi
call fcn.004298e5
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push esi
mov ecx, 0x438090
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
mov esi, dword [0x431404]
mov al, byte [esi]
add al, 0x16
movzx eax, al
add eax, ebx
and eax, edi
call fcn.0042c5d0
mov ecx, esp
mov edx, esi
call fcn.004298e5
mov esi, eax
push esi
call sub.MSVCRT.dll_strlen
pop ecx
push eax
push esi
mov ecx, 0x438118
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
mov eax, dword [0x43811c]
test eax, eax
jne 0x418d7c
mov eax, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov esi, dword [0x431408]
mov dword [ebp - 4], eax
mov al, byte [esi]
add al, 0x16
movzx eax, al
add eax, ebx
and eax, edi
call fcn.0042c5d0
mov ecx, esp
mov edx, esi
call fcn.004298e5
push eax
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [0x431130]
mov eax, 0x438108
mov dword [ebp - 0x220], ecx
mov ecx, dword [0x43113c]
mov dword [ebp - 0x214], ecx
mov ecx, dword [0x43112c]
mov dword [ebp - 0x208], ecx
mov ecx, dword [0x431134]
mov dword [ebp - 0x1fc], ecx
mov ecx, dword [0x431398]
mov dword [ebp - 0x1f0], ecx
mov ecx, dword [0x431390]
mov dword [ebp - 0x1e4], ecx
mov ecx, dword [0x431394]
mov dword [ebp - 0x1d8], ecx
mov ecx, dword [0x431138]
mov dword [ebp - 0x1cc], ecx
mov ecx, dword [0x43114c]
mov dword [ebp - 0x1c0], ecx
mov ecx, dword [0x4313a0]
mov dword [ebp - 0x1b4], ecx
mov ecx, dword [0x431154]
mov dword [ebp - 0x1a8], ecx
mov ecx, dword [0x4313a8]
mov dword [ebp - 0x19c], ecx
mov ecx, dword [0x4313ac]
mov dword [ebp - 0x190], ecx
mov ecx, dword [0x4313b0]
mov dword [ebp - 0x184], ecx
mov ecx, dword [0x4313b4]
mov dword [ebp - 0x178], ecx
mov ecx, dword [0x4313b8]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x21c], fcn.004163ca
mov dword [ebp - 0x218], eax
mov dword [ebp - 0x210], fcn.00415df7
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x204], fcn.0041604e
mov dword [ebp - 0x200], eax
mov dword [ebp - 0x1f8], 0x416e17
mov dword [ebp - 0x1f4], eax
mov dword [ebp - 0x1ec], 0x417e69
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x1e0], 0x41789e
mov dword [ebp - 0x1dc], eax
mov dword [ebp - 0x1d4], 0x417976
mov dword [ebp - 0x1d0], eax
mov dword [ebp - 0x1c8], 0x417f78
mov dword [ebp - 0x1c4], eax
mov dword [ebp - 0x1bc], 0x418218
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1b0], 0x418338
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a4], 0x4184e3
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x198], 0x418593
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x18c], 0x418626
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x180], 0x4186b9
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x174], 0x418732
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x16c], ecx
mov dword [ebp - 0x168], 0x4187ab
mov ecx, dword [0x4313bc]
mov esi, dword [0x43140c]
mov dword [ebp - 0x160], ecx
mov ecx, dword [0x431158]
mov dword [ebp - 0x154], ecx
mov ecx, dword [0x4313c0]
mov dword [ebp - 0x148], ecx
mov ecx, 0x418951
mov dword [ebp - 0x144], ecx
mov dword [ebp - 0x12c], ecx
mov ecx, dword [0x43139c]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x124], ecx
mov ecx, dword [0x4311ec]
mov dword [ebp - 0x10c], ecx
mov ecx, dword [0x4313ec]
mov dword [ebp - 0x100], ecx
mov ecx, dword [0x431250]
mov dword [ebp - 0xf4], ecx
mov ecx, dword [0x4313f0]
mov dword [ebp - 0xe8], ecx
mov ecx, dword [0x431414]
mov dword [ebp - 0xdc], ecx
mov ecx, dword [0x431418]
mov dword [ebp - 0xd0], ecx
mov ecx, dword [0x43141c]
mov dword [ebp - 0xc4], ecx
mov ecx, dword [0x431420]
mov dword [ebp - 0xb8], ecx
mov ecx, dword [0x431424]
mov dword [ebp - 0xac], ecx
mov ecx, dword [0x431244]
mov dword [ebp - 0xa0], ecx
mov ecx, dword [0x431218]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x14c], eax
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x11c], eax
mov eax, dword [0x431150]
mov edx, 0x4188da
mov dword [ebp - 0x94], ecx
mov ecx, dword [0x431428]
mov dword [ebp - 0x150], edx
mov dword [ebp - 0x138], edx
mov edx, dword [0x431410]
mov dword [ebp - 0x118], eax
mov eax, 0x4380a0
mov dword [ebp - 0x88], ecx
mov ecx, dword [0x43142c]
mov dword [ebp - 0x15c], 0x418822
mov dword [ebp - 0x13c], esi
mov dword [ebp - 0x130], edx
mov dword [ebp - 0x120], 0x417ed6
mov dword [ebp - 0x114], 0x41846c
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x108], 0x4189c8
mov dword [ebp - 0x104], eax
mov dword [ebp - 0xfc], 0x418a40
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf0], 0x418ab8
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xe4], 0x418b0f
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xd8], 0x418bcc
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xcc], 0x418bcc
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc0], 0x418bd2
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb4], 0x418bd2
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xa8], 0x418bd8
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0x9c], 0x418b66
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x90], 0x418bde
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x84], 0x418bde
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], ecx
mov ecx, dword [0x431434]
mov dword [ebp - 0x58], ecx
mov ecx, 0x418c47
mov dword [ebp - 0x74], eax
mov eax, dword [0x431430]
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x48], ecx
mov ecx, dword [0x431438]
mov edx, dword [0x431408]
mov dword [ebp - 0x70], eax
mov eax, dword [0x4313f4]
mov dword [ebp - 0x40], ecx
mov ecx, dword [0x43143c]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x34], ecx
mov ecx, dword [0x431440]
mov eax, 0x438118
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], ecx
mov ecx, dword [0x431444]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x14], eax
mov eax, dword [0x431448]
mov dword [ebp - 0x78], 0x418be4
mov dword [ebp - 0x6c], 0x418be4
mov dword [ebp - 0x68], 0x438090
mov dword [ebp - 0x60], 0x418bea
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x3c], 0x418c47
mov dword [ebp - 0x30], 0x418c4d
mov dword [ebp - 0x24], 0x418c53
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], 0x418c58
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], 0x418c58
lea esi, [ebp - 0x220]
mov dword [ebp - 4], 0x2d
push dword [esi]
call fcn.004144e6
mov eax, dword [esi]
pop ecx
mov al, byte [eax]
add al, 0x16
movzx eax, al
add eax, ebx
and eax, edi
call fcn.0042c5d0
mov eax, dword [esi - 4]
mov ecx, esp
mov eax, dword [eax + 4]
test eax, eax
jne 0x41927f
mov eax, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
push dword [esi + 4]
mov edx, dword [esi]
mov dword [ebp - 8], eax
call fcn.004298e5
push eax
push dword [ebp - 8]
push dword [ebp + 8]
call fcn.0041b470
add esi, 0xc
dec dword [ebp - 4]
jne 0x419254
lea esp, [ebp - 0x230]
pop edi
pop esi
pop ebx
leave
ret