Function at 0x404a90
Capabilities:
Create directory
Create pipe
Delete directory
Delete file

Disassembly:
push ebp
mov ecx, 0x1c
mov ebp, esp
push edi
push esi
lea edi, [ebp - 0x88]
mov esi, 0x415700
push ebx
sub esp, 0xcc
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 4], 0
mov dword [esp], 0x417196
call dword [sym.imp.kernel32.dll_CreateDirectoryA]
sub esp, 8
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x4171a3
call dword [sym.imp.kernel32.dll_CreateFileA]
sub esp, 0x1c
mov ebx, eax
mov dword [esp + 4], 0x659
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
xor eax, eax
cmp ebx, 0xffffffff
mov dword [esp + 4], str.create_file_failed:_INVALID_HANDLE_VALUE_n
setne al
mov dword [esp], eax
call fcn.00413800
mov dword [esp + 4], 0x65a
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [sym.imp.kernel32.dll_CloseHandle]
mov dword [esp], ebx
mov ebx, dword fs:[0x18]
mov dword [ebp - 0xa0], eax
call eax
sub esp, 4
mov dword [esp], eax
mov dword [esp + 4], str.CloseHandle_n
call fcn.00413800
mov eax, dword [0x41b070]
mov dword [ebx + 0x34], 0xdeadbeef
test eax, eax
je 0x405450
mov dword [esp + 8], 0
mov dword [esp + 4], 0x4171a3
mov dword [esp], 0x4174d7
call eax
movzx eax, al
sub esp, 0xc
mov dword [ebp - 0xac], eax
test eax, eax
je 0x405433
mov dword [esp + 4], 0x661
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [ebp - 0xac]
mov dword [esp + 4], str.CreateSymbolicLinkA_failed_n
mov dword [esp], eax
call fcn.00413800
mov dword [esp + 4], 0x662
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov dword [esp + 8], 1
mov dword [esp + 4], 0x417196
mov dword [esp], str.tr2_test_dir_dir_link
call dword [0x41b070]
sub esp, 0xc
movzx eax, al
mov dword [esp + 4], str.CreateSymbolicLinkA_failed_n
mov dword [esp], eax
call fcn.00413800
mov eax, dword [sym.imp.kernel32.dll_CreateNamedPipeA]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [ebp - 0xa4], eax
mov dword [esp + 0x14], 0x400
mov dword [esp + 0x10], 0x400
mov dword [esp + 0xc], 2
mov dword [esp + 8], 0
mov dword [esp + 4], 3
mov dword [esp], str..PiPe_tests_pipe.c
call eax
sub esp, 0x20
mov edi, eax
mov dword [ebp - 0x9c], eax
mov dword [esp + 4], 0x668
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
cmp edi, 0xffffffff
mov dword [esp + 4], str.CreateNamedPipe_failed_n
mov edi, 0x41751c
setne al
movzx eax, al
mov dword [esp], eax
call fcn.00413800
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x8c], 0xdeadbeef
mov dword [esp + 4], eax
mov dword [esp], str..PiPe_tests_pipe.c
call dword [0x41b124]
mov esi, dword [str.windows]
mov ecx, 5
mov ebx, eax
repe cmpsb byte [esi], byte es:[edi]
seta al
sbb al, 0
test al, al
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413970
jmp 0x404d29
mov dword [esp + 4], 0x66b
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
xor eax, eax
cmp ebx, 2
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.tr2_sys__Stat__:_expect:_regular_file__got__d_n
mov dword [esp], eax
call fcn.00413800
call fcn.004139c0
call fcn.004139a0
test eax, eax
jne 0x404cf4
mov esi, dword [str.windows]
mov ecx, 5
mov edi, 0x41751c
repe cmpsb byte [esi], byte es:[edi]
seta al
sbb al, 0
test al, al
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413970
jmp 0x404d9b
mov dword [esp + 4], 0x66c
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [ebp - 0x8c]
mov dword [esp + 4], str.tr2_sys__Stat__:_err_code_expect:_ERROR_SUCCESS__got__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413800
call fcn.004139c0
call fcn.004139a0
test eax, eax
jne 0x404d60
lea eax, [ebp - 0x8c]
mov dword [esp], str..PiPe_tests_pipe.c
mov edi, 0x41751c
mov dword [ebp - 0x8c], 0xdeadbeef
mov dword [esp + 4], eax
call dword [0x41b11c]
mov dword [esp + 4], 0x66f
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
mov ebx, eax
call fcn.00413590
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.tr2_sys__Lstat__:_expect:_status_unknown__got__d_n
mov dword [esp], eax
call fcn.00413800
mov esi, dword [str.windows]
mov ecx, 5
repe cmpsb byte [esi], byte es:[edi]
seta al
sbb al, 0
test al, al
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413970
jmp 0x404e5e
mov dword [esp + 4], 0x670
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [ebp - 0x8c]
mov dword [esp + 4], str.tr2_sys__Lstat__:_err_code_expect:_ERROR_PIPE_BUSY__got__d_n
cmp eax, 0xe7
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413800
call fcn.004139c0
call fcn.004139a0
test eax, eax
jne 0x404e20
mov dword [esp + 4], 0x671
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [ebp - 0x9c]
mov dword [esp], eax
mov eax, dword [ebp - 0xa0]
call eax
sub esp, 4
mov dword [esp], eax
mov dword [esp + 4], str.CloseHandle_n
call fcn.00413800
mov eax, dword [ebp - 0xa4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x400
mov dword [esp + 0x10], 0x400
mov dword [esp + 0xc], 2
mov dword [esp + 8], 0
mov dword [esp + 4], 3
mov dword [esp], str..PiPe_tests_pipe.c
call eax
sub esp, 0x20
mov edi, eax
mov dword [ebp - 0xa4], eax
mov dword [esp + 4], 0x675
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
cmp edi, 0xffffffff
mov dword [esp + 4], str.CreateNamedPipe_failed_n
mov edi, 0x41751c
setne al
movzx eax, al
mov dword [esp], eax
call fcn.00413800
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x8c], 0xdeadbeef
mov dword [esp + 4], eax
mov dword [esp], str..PiPe_tests_pipe.c
call dword [0x41b11c]
mov esi, dword [str.windows]
mov ecx, 5
mov ebx, eax
repe cmpsb byte [esi], byte es:[edi]
seta al
sbb al, 0
test al, al
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413970
jmp 0x404fa5
mov dword [esp + 4], 0x678
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
xor eax, eax
cmp ebx, 2
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.tr2_sys__Lstat__:_expect:_regular_file__got__d_n
mov dword [esp], eax
call fcn.00413800
call fcn.004139c0
call fcn.004139a0
test eax, eax
jne 0x404f70
mov esi, dword [str.windows]
mov ecx, 5
mov edi, 0x41751c
repe cmpsb byte [esi], byte es:[edi]
seta al
sbb al, 0
test al, al
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413970
jmp 0x40501b
mov dword [esp + 4], 0x679
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [ebp - 0x8c]
mov dword [esp + 4], str.tr2_sys__Lstat__:_err_code_expect:_ERROR_SUCCESS__got__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413800
call fcn.004139c0
call fcn.004139a0
test eax, eax
jne 0x404fe0
mov dword [esp + 4], 0x67a
lea ebx, [ebp - 0x88]
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
mov dword [ebp - 0x9c], eax
call fcn.00413590
mov eax, dword [ebp - 0xa4]
mov dword [esp], eax
mov eax, dword [ebp - 0xa0]
call eax
sub esp, 4
mov dword [esp + 4], str.CloseHandle_n
mov dword [esp], eax
call fcn.00413800
lea esi, [esi]
nop
mov eax, dword [ebx]
lea edx, [ebp - 0x8c]
mov dword [ebp - 0x8c], 0xdeadbeef
mov dword [esp + 4], edx
mov dword [ebp - 0xa4], eax
mov dword [esp], eax
call dword [0x41b124]
mov dword [ebp - 0xa8], eax
mov eax, dword [ebx + 0xc]
mov ecx, eax
mov dword [ebp - 0xa0], eax
xor eax, eax
test ecx, ecx
je 0x4050cb
mov esi, dword [str.windows]
mov ecx, 5
mov edi, 0x41751c
repe cmpsb byte [esi], byte es:[edi]
seta al
sbb al, 0
test al, al
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413970
add dword [ebp - 0x9c], 1
mov esi, dword [ebp - 0xa8]
mov edi, dword [ebp - 0x9c]
jmp 0x405130
mov dword [esp + 4], 0x680
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [ebx + 4]
mov dword [esp + 0x10], esi
mov dword [esp + 8], edi
cmp eax, esi
mov dword [esp + 0xc], eax
sete al
mov dword [esp + 4], str.tr2_sys__Stat__:_test__d_expect:__d__got__d_n
movzx eax, al
mov dword [esp], eax
call fcn.00413800
call fcn.004139c0
call fcn.004139a0
test eax, eax
jne 0x4050f0
mov dword [esp + 4], 0x681
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov edx, dword [ebx + 8]
mov eax, dword [ebp - 0x8c]
mov dword [esp + 4], str.tr2_sys__Stat__:_test__d_err_code_expect:__d__got__d_n
mov ecx, dword [ebp - 0x9c]
cmp eax, edx
mov dword [esp + 0x10], eax
sete al
mov dword [esp + 0xc], edx
movzx eax, al
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [ebp - 0xa8], edx
call fcn.00413800
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x8c], 0xdeadbeef
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xa4]
mov dword [esp], eax
call dword [0x41b11c]
mov edx, dword [ebp - 0xa0]
mov dword [ebp - 0xa4], eax
test edx, edx
je 0x4051de
mov esi, dword [str.windows]
mov ecx, 5
mov edi, 0x41751c
repe cmpsb byte [esi], byte es:[edi]
seta al
sbb al, 0
test al, al
sete al
movzx eax, al
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xa0]
mov dword [esp], eax
call fcn.00413970
mov esi, dword [ebp - 0xa4]
mov edi, dword [ebp - 0x9c]
jmp 0x405240
mov dword [esp + 4], 0x688
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [ebx + 4]
mov dword [esp + 0x10], esi
mov dword [esp + 8], edi
cmp eax, esi
mov dword [esp + 0xc], eax
sete al
mov dword [esp + 4], str.tr2_sys__Lstat__:_test__d_expect:__d__got__d_n
movzx eax, al
mov dword [esp], eax
call fcn.00413800
call fcn.004139c0
call fcn.004139a0
test eax, eax
jne 0x405200
mov dword [esp + 4], 0x689
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [ebp - 0x8c]
mov ecx, dword [ebp - 0xa8]
mov dword [esp + 4], str.tr2_sys__Lstat__:_test__d_err_code_expect:__d__got__d_n
mov edi, dword [ebp - 0x9c]
cmp ecx, eax
mov dword [esp + 0x10], eax
sete al
mov dword [esp + 0xc], ecx
add ebx, 0x10
movzx eax, al
mov dword [esp + 8], edi
mov dword [esp], eax
call fcn.00413800
cmp edi, 7
jne 0x405070
lea eax, [ebp - 0x8c]
mov dword [esp], str.tr2_test_dir
mov dword [ebp - 0x8c], 0xdeadbeef
mov dword [esp + 4], eax
call dword [0x41b120]
mov dword [esp + 4], 0x68f
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
mov ebx, eax
call fcn.00413590
xor eax, eax
cmp ebx, 3
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.tr2_sys__Stat_wchar___expect_directory_file__got__d_n
mov dword [esp], eax
call fcn.00413800
mov dword [esp + 4], 0x690
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [ebp - 0x8c]
mov dword [esp + 4], str.tr2_sys__Stat_wchar__:_err_code_expect_ERROR_SUCCESS__got__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413800
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x8c], 0xdeadbeef
mov dword [esp + 4], eax
mov dword [esp], 0x417230
call dword [0x41b118]
mov dword [esp + 4], 0x693
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
mov ebx, eax
call fcn.00413590
xor eax, eax
cmp ebx, 2
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.tr2_sys__Lstat_wchar___expect_regular_file__got__d_n
mov dword [esp], eax
call fcn.00413800
mov dword [esp + 4], 0x694
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov eax, dword [ebp - 0x8c]
mov dword [esp + 4], str.tr2_sys__Lstat_wchar__:_err_code_expect_ERROR_SUCCESS__got__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413800
mov eax, dword [ebp - 0xac]
test eax, eax
jne 0x40548d
mov ebx, dword [sym.imp.kernel32.dll_DeleteFileA]
mov esi, dword [sym.imp.kernel32.dll_RemoveDirectoryA]
mov dword [esp + 4], 0x69a
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov dword [esp], 0x4171a3
call ebx
sub esp, 4
mov dword [esp], eax
mov dword [esp + 4], str.expect_tr2_test_dir_f1_to_exist_n
call fcn.00413800
mov dword [esp + 4], 0x69b
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov dword [esp], 0x417196
call esi
sub esp, 4
mov dword [esp + 4], str.expect_tr2_test_dir_to_exist_n
mov dword [esp], eax
call fcn.00413800
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov ecx, dword [0x41b070]
test ecx, ecx
je 0x405450
cmp dword [ebx + 0x34], 0x522
je 0x405450
cmp dword [ebx + 0x34], 1
jne 0x404bb3
mov dword [esp + 4], 0x65f
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x34], 1
call fcn.00413590
mov dword [esp], str.Privilege_not_held_or_symbolic_link_not_supported__skipping_symbolic_link_tests._n
call fcn.00413910
mov dword [ebp - 0xac], 0
jmp 0x404c24
mov esi, dword [str.windows]
mov ecx, 5
mov edi, 0x41751c
repe cmpsb byte [esi], byte es:[edi]
seta al
sbb al, 0
test al, al
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413970
mov ebx, dword [sym.imp.kernel32.dll_DeleteFileA]
jmp 0x4054f5
mov dword [esp + 4], 0x697
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov dword [esp], 0x4174d7
call ebx
sub esp, 4
mov dword [esp], eax
mov dword [esp + 4], str.expect_tr2_test_dir_f1_link_to_exist_n
call fcn.00413800
call fcn.004139c0
call fcn.004139a0
test eax, eax
jne 0x4054c0
mov esi, dword [str.windows]
mov ecx, 5
mov edi, 0x41751c
repe cmpsb byte [esi], byte es:[edi]
seta al
sbb al, 0
test al, al
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00413970
mov esi, dword [sym.imp.kernel32.dll_RemoveDirectoryA]
jmp 0x405565
mov dword [esp + 4], 0x698
mov dword [esp], str..._wine_dlls_msvcp120_tests_msvcp120.c
call fcn.00413590
mov dword [esp], str.tr2_test_dir_dir_link
call esi
sub esp, 4
mov dword [esp], eax
mov dword [esp + 4], str.expect_tr2_test_dir_dir_link_to_exist_n
call fcn.00413800
call fcn.004139c0
call fcn.004139a0
test eax, eax
jne 0x405530
jmp 0x4053cb