Function at 0x406c00
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x5c
mov esi, dword [0x414118]
test esi, esi
je 0x4071f0
mov ebx, dword [0x414114]
test ebx, ebx
je 0x4071f0
mov dword [esp + 4], 0x412461
mov dword [esp], str.test_file
call dword [0x414128]
mov dword [esp + 4], 0x50f
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov ebx, eax
call fcn.0040ec10
xor eax, eax
test ebx, ebx
mov dword [esp + 4], str.unable_to_create_test_file_n
setne al
mov dword [esp], eax
call fcn.0040ee80
test ebx, ebx
je 0x4071e6
mov dword [esp + 4], 0x412489
mov dword [esp], str.test_file
call dword [0x414128]
mov dword [esp + 4], 0x513
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov esi, eax
call fcn.0040ec10
xor eax, eax
test esi, esi
mov dword [esp + 4], str.unable_to_open_test_file_n
setne al
mov dword [esp], eax
call fcn.0040ee80
test esi, esi
je 0x4071d0
mov edi, dword [sym.imp.kernel32.dll_CreateEventW]
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], ebx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call edi
sub esp, 0x10
mov dword [ebp - 0x24], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call edi
mov dword [ebp - 0x1c], 0
sub esp, 0x10
mov dword [ebp - 0x20], eax
mov dword [esp + 4], 0x51f
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
call fcn.0040ec10
mov edx, dword [ebp - 0x24]
xor eax, eax
mov dword [esp + 4], str.CreateEventW_failed_n
test edx, edx
setne al
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp + 4], 0x520
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
call fcn.0040ec10
mov ecx, dword [ebp - 0x20]
xor eax, eax
mov dword [esp + 4], str.CreateEventW_failed_n
test ecx, ecx
setne al
mov dword [esp], eax
call fcn.0040ee80
lea eax, [ebp - 0x2c]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x407220
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_CreateThread]
sub esp, 0x18
mov edi, eax
mov dword [esp + 4], 0x522
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
call fcn.0040ec10
xor eax, eax
test edi, edi
mov dword [esp + 4], str.CreateThread_failed_n
setne al
mov dword [esp], eax
call fcn.0040ee80
mov edx, dword [sym.imp.kernel32.dll_WaitForSingleObject]
mov eax, dword [ebp - 0x24]
mov dword [esp + 4], 0xffffffff
mov dword [ebp - 0x40], edx
mov dword [esp], eax
call edx
sub esp, 8
mov dword [esp], esi
call dword [0x414110]
mov dword [esp + 4], 0x526
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str._fileno_filer__returned__d_n
mov dword [esp + 8], eax
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp], ebx
call dword [0x414110]
mov dword [esp + 4], 0x528
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str._fileno_filew__returned__d_n
mov dword [esp + 8], eax
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp], esi
call dword [0x41410c]
mov dword [esp + 4], 0x52b
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str.feof_filer__returned__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp], ebx
call dword [0x41410c]
mov dword [esp + 4], 0x52d
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str.feof_filew__returned__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp], esi
call dword [0x414108]
mov dword [esp + 4], 0x530
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str.ferror_filer__returned__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp], ebx
call dword [0x414108]
mov dword [esp + 4], 0x532
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str.ferror_filew__returned__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp + 4], esi
mov dword [esp], 0x61
call dword [0x414104]
mov dword [esp + 4], 0x535
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str._flsbuf_filer__returned__d_n
cmp eax, 0xffffffff
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp + 4], ebx
mov dword [esp], 0x61
call dword [0x414104]
mov dword [esp + 4], 0x537
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str._flsbuf_filew__returned__d_n
cmp eax, 0x61
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp], esi
call dword [0x414100]
mov dword [esp + 4], 0x53a
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str._filbuf_filer__returned__d_n
cmp eax, 0xffffffff
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp], ebx
call dword [0x414100]
mov dword [esp + 4], 0x53c
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str._filbuf_filew__returned__d_n
cmp eax, 0xffffffff
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp], esi
call dword [0x4140f0]
mov dword [esp + 4], 0x53f
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str._fflush_nolock_filer__returned__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov dword [esp], ebx
call dword [0x4140f0]
mov dword [esp + 4], 0x541
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str._fflush_nolock_filew__returned__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_SetEvent]
sub esp, 4
mov dword [esp], 0
call dword [0x4140f0]
mov dword [esp + 4], 0x546
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str._fflush_nolock_NULL__returned__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov eax, 1
lock xadd dword [ebp - 0x1c], eax
mov dword [esp + 4], 0x548
add eax, 1
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x44], eax
call fcn.0040ec10
mov eax, dword [ebp - 0x3c]
mov dword [esp + 4], str.InterlockedIncrement_returned__d_n
cmp eax, 2
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0040ee80
mov edx, dword [ebp - 0x40]
mov dword [esp + 4], 0xffffffff
mov dword [esp], edi
call edx
mov edx, dword [sym.imp.kernel32.dll_CloseHandle]
mov eax, dword [ebp - 0x24]
sub esp, 8
mov dword [ebp - 0x3c], edx
mov dword [esp], eax
call edx
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x3c]
sub esp, 4
mov dword [esp], eax
call edx
mov edx, dword [ebp - 0x3c]
sub esp, 4
mov dword [esp], edi
call edx
sub esp, 4
mov dword [esp], esi
call dword [0x414124]
mov dword [esp], ebx
call dword [0x414124]
mov dword [esp], str.test_file
call dword [0x414120]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 4], 0x50a
mov dword [esp], str..._wine_dlls_msvcr90_tests_msvcr90.c
call fcn.0040ec10
mov dword [esp], str._lock_file_not_available_n
call fcn.0040ef90
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret