Function at 0x40bf10
Capabilities:
Identify system language via api
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4c
mov eax, dword [0x429178]
and eax, 0x9b3c1aa9
sub eax, 0x63fe5e23
imul eax, eax, 0x65a988f7
lea edx, [eax - 0x185283ba]
add eax, 0x70344013
mov dword [0x429178], edx
mov dword [0x4290e4], eax
xor eax, eax
cmp byte [eax + str.SdbReadQWORDTag], 0
je 0x40bf6b
inc eax
cmp eax, 0x2272
jne 0x40bf46
call fcn.00412bf4
mov eax, dword [0x4290e4]
and eax, 0x1d547a13
mov dword [0x429178], eax
imul eax, dword [0x4290e4], 0x913f6f9b
mov dword [0x4290e4], eax
mov dword [esp], 0x1101
call dword [sym.imp.USER32.dll_IsZoomed]
push esi
imul edx, dword [0x4290e4], 0x55b41fe1
mov dword [0x4290e4], edx
xor edx, edx
cmp byte [edx + str.SdbReadQWORDTag], 0
je 0x40bfb6
inc edx
cmp edx, 0x1143
jne 0x40bf9a
add eax, 0x45fec7c8
mov dword [0x4290e4], eax
mov eax, dword [0x4290e4]
add eax, 0x1ec85b39
mov dword [0x429178], eax
mov dword [esp], eax
call dword [sym.imp.USER32.dll_GetTopWindow]
mov edx, str.An_invalid_parameter_was_specified_during_context_registration.
mov ecx, 0x19c2
add eax, 0x7d03c350
push ebx
mov dword [0x4290e4], eax
movzx eax, byte [edx]
inc edx
test al, al
je 0x40c004
add ecx, eax
cmp ecx, 0x1fcb
jbe 0x40bfe3
mov eax, dword [0x429178]
xor eax, 0xe2240988
mov dword [0x4290e4], eax
mov eax, dword [0x4290e4]
mov ecx, str.An_invalid_parameter_was_specified_during_context_registration.
mov ebx, 0x11fd
xor dword [0x429178], 0x6b707ed7
or eax, 0x15d12ae8
movzx edx, byte [ecx]
inc ecx
test dl, dl
je 0x40c040
add ebx, edx
cmp ebx, 0x1110
jbe 0x40c022
imul edx, eax, 0xf16e260f
mov dword [0x429178], edx
xor eax, 0x6c05cb31
and eax, 0x1f58e47
mov dword [0x4290e4], eax
mov dword [esp + 8], str.An_invalid_parameter_was_specified_during_context_registration.
mov dword [esp + 4], eax
mov dword [esp], eax
call fcn.00412810
mov eax, dword [0x4290e4]
mov edx, str.SdbReadQWORDTag
mov ecx, 0x493
xor eax, 0x337d8de4
mov dword [0x4290e4], eax
or eax, 0xda7ec71c
mov dword [0x429178], eax
movsx eax, byte [edx]
inc edx
test al, al
je 0x40c0ac
add ecx, eax
cmp ecx, 0x981
jbe 0x40c086
call fcn.0040fa5c
mov eax, dword [0x4290e4]
sub eax, 0x3bc0c8d8
mov dword [0x429178], eax
mov edx, dword [0x429178]
xor ecx, ecx
lea edi, [ebp - 0x32]
mov word [ebp - 0x34], 0
mov dword [ebp - 0x38], ecx
mov ecx, 6
mov eax, edx
xor eax, 0x23762ccb
mov dword [0x4290e4], eax
xor eax, eax
cmp dword [ebp + 8], 0
rep stosb byte es:[edi], al
je 0x40c4e2
cmp dword [ebp + 0xc], 0
jne 0x40c17e
and edx, 0xe716ad2a
mov dword [0x429178], edx
cmp byte [ecx + str.An_invalid_parameter_was_specified_during_context_registration.], 0
je 0x40c11d
inc ecx
cmp ecx, 0x1123
jne 0x40c0f5
call fcn.00413fd0
imul eax, dword [0x4290e4], 0xba2152a8
mov dword [0x429178], eax
jmp 0x40c12b
lea eax, [edx + 0x1859754e]
cmp ecx, 0xbdd
jle 0x40c16a
mov dword [esp + 0xc], str.The_boot_disk_experienced_failures.
mov dword [esp + 8], str.An_invalid_parameter_was_specified_during_context_registration.
mov eax, dword [0x4290e4]
mov dword [esp], str.An_invalid_parameter_was_specified_during_context_registration.
mov dword [esp + 4], eax
call fcn.00411ff4
imul eax, dword [0x429178], 0xc359975f
mov dword [0x4290e4], eax
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
or eax, 0x28a5a4e6
mov dword [0x4290e4], eax
sub eax, 0x27097c33
mov dword [0x429178], eax
jmp 0x40c4e2
mov esi, dword [ebp + 8]
xor ebx, ebx
mov eax, dword [esi + 0x3c]
add eax, esi
mov edi, dword [eax + 0x78]
mov eax, dword [eax + 0x7c]
add edi, esi
mov dword [ebp - 0x3c], eax
mov eax, dword [edi + 0x20]
mov dword [ebp - 0x40], eax
mov eax, dword [edi + 0x1c]
mov dword [ebp - 0x44], eax
mov eax, dword [edi + 0x24]
mov dword [ebp - 0x48], eax
cmp ebx, dword [edi + 0x18]
jae 0x40c4e2
cmp byte [str.An_invalid_parameter_was_specified_during_context_registration.], 0
je 0x40c1c1
sub dword [0x429178], 0x34715d63
sub dword [0x4290e4], 0x42ef7824
add dword [0x429178], 0x6ed26aa7
call fcn.0040fa5c
mov eax, dword [ebp - 0x40]
add eax, dword [ebp + 8]
xor edx, edx
mov esi, dword [ebp + 8]
add esi, dword [eax + ebx*4]
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], esi
call fcn.0040bd40
cmp eax, dword [ebp + 0xc]
jne 0x40c4dc
mov eax, dword [0x429178]
add ebx, ebx
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
push eax
mov eax, dword [ebp - 0x48]
add ebx, dword [ebp + 8]
mov ecx, dword [ebp + 8]
xor dword [0x429178], 0xa8225049
movzx eax, word [ebx + eax]
mov ebx, dword [ebp + 8]
lea eax, [ebx + eax*4]
mov ebx, dword [ebp - 0x44]
add ecx, dword [eax + ebx]
mov dword [ebp - 0x38], ecx
cmp ecx, edi
jb 0x40c4d7
mov eax, dword [ebp - 0x3c]
add eax, dword [ebp + 8]
add eax, edi
cmp ecx, eax
jae 0x40c4d7
mov dword [esp], esi
call fcn.0040e1d4
mov dword [ebp - 0x30], esi
mov word [ebp - 0x34], ax
inc eax
mov word [ebp - 0x32], ax
mov eax, dword [0x416104]
cmp dword [eax + 8], 0
je 0x40c4e2
mov eax, dword [0x429178]
lea edi, [ebp - 0x2c]
mov esi, 0x416200
xor ebx, ebx
mov edx, eax
add eax, 0xa3c964f
xor edx, 0x151b5658
mov dword [0x429178], eax
mov dword [0x4290e4], edx
mov dword [esp + 4], str.SdbReadQWORDTag
mov dword [esp], str.The_boot_disk_experienced_failures.
call fcn.0040e460
mov ecx, 5
rep movsd dword es:[edi], dword [esi]
xor esi, esi
mov edx, dword [0x4290e4]
mov ecx, str.An_invalid_parameter_was_specified_during_context_registration.
imul eax, edx, 0x4dbf15ea
mov dword [0x429178], eax
mov al, byte [ecx]
test al, al
je 0x40c2f5
sub eax, 0x30
cmp al, 9
jbe 0x40c2f2
add edx, 0x6c6f47cd
mov dword [0x4290e4], edx
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
jmp 0x40c2f5
inc ecx
jmp 0x40c2d1
add dword [0x429178], 0x37994f40
mov dword [esp + 4], str.SdbReadQWORDTag
mov dword [esp], str.The_boot_disk_experienced_failures.
call fcn.0040e460
sub esi, dword [ebp + ebx*4 - 0x2c]
inc ebx
mov edi, esi
cmp ebx, 5
jne 0x40c2bb
mov edx, dword [0x429178]
imul eax, edx, 0x27f56ebb
mov dword [0x4290e4], eax
xor eax, eax
cmp word [eax + eax + str.The_boot_disk_experienced_failures.], 0
je 0x40c376
inc eax
cmp eax, 0x10fa
jne 0x40c332
mov dword [esp + 0xc], str.An_invalid_parameter_was_specified_during_context_registration.
mov dword [esp + 8], str.An_invalid_parameter_was_specified_during_context_registration.
mov dword [esp + 4], str.The_boot_disk_experienced_failures.
mov dword [esp], edx
call fcn.0040e9ec
imul eax, dword [0x429178], 0x2ef21fc8
mov dword [0x429178], eax
jmp 0x40c37d
cmp eax, 0x624
jle 0x40c3a1
mov dword [esp + 0xc], str.The_boot_disk_experienced_failures.
mov dword [esp + 8], str.The_boot_disk_experienced_failures.
mov dword [esp + 4], str.An_invalid_parameter_was_specified_during_context_registration.
mov dword [esp], str.An_invalid_parameter_was_specified_during_context_registration.
call fcn.0041164c
mov eax, dword [0x4290e4]
mov edx, eax
xor eax, 0x1bce4846
imul eax, eax, 0x7f46671d
xor edx, 0x210d5828
mov dword [0x429178], edx
mov dword [0x4290e4], eax
lea eax, [ebp - 0x38]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x34]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
mov eax, dword [0x416104]
call dword [eax + 8]
sub esp, 0x10
test eax, eax
jns 0x40c4d7
xor eax, eax
cmp byte [eax + str.An_invalid_parameter_was_specified_during_context_registration.], 0
je 0x40c411
inc eax
cmp eax, 0xf05
jne 0x40c3f1
mov eax, dword [0x429178]
xor eax, 0xdfd78c19
mov dword [0x4290e4], eax
mov eax, dword [0x429178]
sub dword [0x4290e4], 0x4016c5b4
sub eax, 0x65135ff7
xor eax, 0x128f3ec8
and eax, 0xa27bc9fc
mov dword [0x429178], eax
mov dword [esp + 4], str.SdbReadQWORDTag
mov dword [esp], str.The_boot_disk_experienced_failures.
call fcn.0040e460
mov eax, dword [0x4290e4]
or eax, 0xc8037feb
mov dword [0x429178], eax
call dword [sym.imp.USER32.dll_GetShellWindow]
mov dword [esp + 4], str.SdbReadQWORDTag
mov dword [esp], str.The_boot_disk_experienced_failures.
call fcn.0040e460
mov ebx, dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
imul eax, dword [0x4290e4], 0x24cbd8d3
mov dword [0x429178], eax
and eax, 0x40178152
mov dword [0x4290e4], eax
call ebx
sub dword [0x429178], 0x998c891
mov dword [esp + 4], str.SdbReadQWORDTag
mov dword [esp], str.The_boot_disk_experienced_failures.
call fcn.0040e460
imul eax, dword [0x4290e4], 0x24cbd8d3
mov dword [0x429178], eax
and eax, 0x40178152
mov dword [0x4290e4], eax
call ebx
sub dword [0x429178], 0x998c891
jmp 0x40c4e2
mov eax, dword [ebp - 0x38]
jmp 0x40c4e4
inc ebx
jmp 0x40c1a5
xor eax, eax
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret