Function at 0x401c60
Capabilities:
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
push ebx
sub esp, 0xc
call dword [sym.imp.kernel32.dll_GetUserDefaultUILanguage]
and ax, 0x3ff
cmp ax, 9
je 0x401ca0
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xcb
mov dword [esp], str.Tests_only_work_with_English_locale._n
call fcn.00401150
mov ebx, dword [ebp - 4]
leave
ret
mov dword [esp], 2
mov ecx, section..rdata
mov eax, 0x84
mov edx, ecx
call fcn.004017e0
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x85
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x86
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
setne al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
mov dword [esp + 4], str.FINDSTR:_Bad_command_line_r_n
mov dword [esp], 0x418020
call sub.msvcrt.dll_strcmp
mov ebx, eax
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x88
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 4], str.Got_the_wrong_result._n
mov dword [esp], eax
call fcn.00401250
mov ecx, section..rdata
mov edx, 0x406207
mov dword [esp], 0
mov eax, 0x8b
call fcn.004017e0
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x8c
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
setne al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x8d
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
mov ecx, 0x40617f
mov eax, 0x90
mov dword [esp], 0
mov edx, ecx
call fcn.004017e0
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x91
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
setne al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x92
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
cmp dword [0x428020], 0xd636261
je 0x402380
mov ebx, 1
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x94
mov eax, ebx
xor eax, 1
mov dword [esp + 4], str.Got_the_wrong_result._n
mov dword [esp], eax
call fcn.00401250
mov ecx, 0x406210
mov edx, 0x40617f
mov dword [esp], 1
mov eax, 0x97
call fcn.004017e0
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x98
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x99
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
xor ecx, ecx
mov edx, 0x40617f
mov eax, 0x9c
call fcn.00401b30
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x9d
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
setne al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0x9e
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
xor ebx, ebx
movzx eax, al
mov dword [esp], eax
call fcn.00401250
cmp dword [0x428020], 0x636261
setne bl
call fcn.00402480
xor ebx, 1
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xa0
mov dword [esp + 4], str.Got_the_wrong_result._n
mov dword [esp], ebx
call fcn.00401250
mov ecx, 1
mov edx, 0x406210
mov eax, 0xa3
call fcn.00401b30
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xa4
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xa5
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
mov ecx, 0x40617f
mov edx, str._abc_cba_
mov dword [esp], 0
mov eax, 0xa8
call fcn.004017e0
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xa9
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
setne al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xaa
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
cmp dword [0x428020], 0xd636261
je 0x4023c8
mov ebx, 1
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xac
mov eax, ebx
xor eax, 1
mov dword [esp + 4], str.Got_the_wrong_result._n
mov dword [esp], eax
call fcn.00401250
mov ecx, 0x40617f
mov edx, str._C:abc
mov dword [esp], 0
mov eax, 0xaf
call fcn.004017e0
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xb0
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
setne al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xb1
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
cmp dword [0x428020], 0xd636261
je 0x4023b0
mov ebx, 1
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xb3
mov eax, ebx
xor eax, 1
mov dword [esp + 4], str.Got_the_wrong_result._n
mov dword [esp], eax
call fcn.00401250
mov ecx, 0x40617f
mov edx, str._C:_abc_
mov dword [esp], 0
mov eax, 0xb6
call fcn.004017e0
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xb7
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
setne al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xb8
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
cmp dword [0x428020], 0xd636261
je 0x402398
mov ebx, 1
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xba
mov eax, ebx
xor eax, 1
mov dword [esp + 4], str.Got_the_wrong_result._n
mov dword [esp], eax
call fcn.00401250
mov ecx, 0x40617f
mov edx, str._C:_abc_cba_
mov dword [esp], 1
mov eax, 0xbd
call fcn.004017e0
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xbe
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xbf
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
mov ecx, 0x406210
mov edx, str._C:abc
mov dword [esp], 1
mov eax, 0xc2
call fcn.004017e0
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xc3
mov eax, dword [0x418004]
mov dword [esp + 4], str.Unexpected_stdout_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
call fcn.00402480
mov dword [eax], 0x40612e
mov dword [eax + 4], 0xc4
mov eax, dword [0x418000]
mov dword [esp + 4], str.Unexpected_stderr_buffer_size__ld._n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401250
mov ebx, dword [ebp - 4]
leave
ret
xor ebx, ebx
cmp word [0x428024], 0xa
jne 0x401e6c
jmp 0x401e71
xor ebx, ebx
cmp word [0x428024], 0xa
jne 0x402249
jmp 0x40224e
xor ebx, ebx
cmp word [0x428024], 0xa
jne 0x40218c
jmp 0x402191
xor ebx, ebx
cmp word [0x428024], 0xa
jne 0x4020cf
jmp 0x4020d4