Function at 0x40c660
Capabilities:
Get common file path
Query environment variable
Set current directory
Terminate process

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x29c
mov eax, dword [ebp + 0xc]
mov edi, dword [sym.imp.kernel32.dll_GetStdHandle]
mov dword [esp], 0xfffffff6
mov esi, dword [ebp + 8]
mov dword [ebp - 0x25c], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x254], edi
mov dword [ebp - 0x264], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x27c], eax
call edi
sub esp, 4
mov dword [ebp - 0x258], eax
mov dword [esp], 0xfffffff5
call edi
sub esp, 4
mov dword [ebp - 0x234], eax
mov dword [esp], 0xfffffff4
call edi
movzx ebx, byte [0x423030]
mov dword [ebp - 0x22c], 0xfffffff6
mov dword [ebp - 0x230], eax
sub esp, 4
mov dword [ebp - 0x228], 0xfffffff5
mov dword [ebp - 0x224], 0xfffffff4
test bl, 8
jne 0x40cf70
mov dword [esp], 0x4000
mov edi, dword [sym.imp.ucrtbase.dll_malloc]
call edi
mov dword [ebp - 0x250], eax
test eax, eax
je 0x40d5e2
mov ecx, dword [ebp - 0x250]
xor eax, eax
nop
movzx edx, word [esi + eax]
mov word [ecx + eax], dx
add eax, 2
test dx, dx
jne 0x40c720
mov dword [esp], 0x4000
call edi
mov dword [ebp - 0x260], eax
test eax, eax
je 0x40d5e2
mov eax, dword [ebp - 0x250]
mov edi, dword [ebp - 0x250]
movzx eax, word [eax]
cmp ax, 9
je 0x40c768
cmp ax, 0x20
jne 0x40c77b
lea esi, [esi]
movzx eax, word [edi + 2]
add edi, 2
cmp ax, 0x20
je 0x40c768
cmp ax, 9
je 0x40c768
and ebx, 8
jne 0x40cfb8
movzx eax, word [edi]
cmp ax, 0x40
jne 0x40c794
movzx eax, word [edi + 2]
add edi, 2
mov esi, dword [sym.imp.user32.dll_IsCharAlphaNumericW]
xor ebx, ebx
jmp 0x40c7a5
inc ebx
movzx eax, word [edi + ebx*2]
mov dword [esp], eax
call esi
sub esp, 4
test eax, eax
jne 0x40c7a0
mov esi, 0x438140
mov dword [ebp - 0x24c], ebx
mov dword [ebp - 0x274], eax
mov ebx, esi
mov esi, eax
jmp 0x40c7dd
inc esi
add ebx, 0x14
cmp esi, 0x2f
je 0x40cff0
mov eax, dword [ebp - 0x24c]
mov dword [esp + 0x14], 0xffffffff
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 8], edi
mov dword [esp + 4], 0x1001
mov dword [esp], 0x400
call dword [sym.imp.kernel32.dll_CompareStringW]
sub esp, 0x18
cmp eax, 2
jne 0x40c7d0
cmp esi, 0xb
mov ebx, dword [ebp - 0x24c]
mov dword [ebp - 0x268], esi
setne dl
cmp esi, 0xe
setne al
and edx, eax
mov byte [ebp - 0x24c], dl
lea eax, [ebx + ebx]
mov dword [ebp - 0x278], eax
add eax, edi
mov dword [ebp - 0x26c], eax
movzx eax, word [eax]
mov esi, dword [ebp - 0x26c]
cmp ax, 9
je 0x40c860
cmp ax, 0x20
jne 0x40c873
lea esi, [esi]
movzx eax, word [esi + 2]
add esi, 2
cmp ax, 0x20
je 0x40c860
cmp ax, 9
je 0x40c860
mov eax, dword [ebp - 0x264]
test eax, eax
setne bl
xor eax, eax
and bl, byte [ebp - 0x24c]
jne 0x40ce70
mov dword [ebp - 0x270], edi
mov ecx, dword [ebp - 0x260]
mov edi, dword [ebp - 0x25c]
nop
movzx edx, word [edi + eax]
mov word [ecx + eax], dx
add eax, 2
test dx, dx
jne 0x40c8a0
mov edi, dword [ebp - 0x270]
mov eax, dword [0x4231c8]
mov ecx, dword [0x4231d8]
xor edx, edx
test eax, eax
mov eax, dword [ebp - 0x250]
setne dl
call sym._handleExpansion
mov eax, dword [0x4231c8]
xor edx, edx
mov ecx, dword [0x4231d8]
test eax, eax
mov eax, dword [ebp - 0x260]
setne dl
call sym._handleExpansion
mov eax, dword [ebp - 0x250]
cmp word [eax + 2], 0x3a
je 0x40d0c0
cmp byte [ebp - 0x24c], 0
mov dword [ebp - 0x220], 0xc
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x218], 1
jne 0x40c980
test byte [0x423030], 8
jne 0x40d210
mov eax, esi
call sym._WCMD_parse.constprop.0
test byte [0x423030], 8
jne 0x40d010
cmp dword [ebp - 0x268], 0x2f
je 0x40d05f
cmp word [esi], 0x2f
je 0x40cd20
mov eax, dword [ebp - 0x268]
cmp eax, 0x2e
ja case.0x40c96f.0
jmp dword [eax*4 + 0x437944]
test bl, bl
je 0x40cc60
mov eax, dword [ebp - 0x264]
mov eax, dword [eax]
cmp word [eax + 0x14], 0
je 0x40cc60
test byte [0x423030], 8
jne 0x40d251
lea edx, [ebp - 0x220]
add eax, 0x14
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x4000080
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], edx
mov dword [esp + 8], 3
mov dword [esp + 4], 0x80000000
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_CreateFileW]
mov dword [ebp - 0x244], eax
sub esp, 0x1c
cmp eax, 0xffffffff
je 0x40d1e0
mov dword [esp + 4], eax
mov dword [esp], 0xfffffff6
call dword [sym.imp.kernel32.dll_SetStdHandle]
mov eax, dword [ebp - 0x264]
xor ecx, ecx
sub esp, 8
mov eax, dword [eax]
mov word [eax + 0x14], cx
mov eax, dword [sym.imp.ucrtbase.dll_wcschr]
mov dword [ebp - 0x25c], eax
mov eax, dword [ebp - 0x260]
mov dword [ebp - 0x280], edi
mov dword [ebp - 0x284], esi
mov ebx, eax
jmp 0x40cb28
lea ebx, [eax + 2]
mov ecx, 2
cmp dx, 0x26
je 0x40cb7d
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
mov dword [ebp - 0x24c], ecx
call sym._WCMD_parameter
mov ecx, dword [ebp - 0x24c]
mov dword [esp + 0x18], 0
mov edi, eax
lea eax, [ebp - 0x220]
mov dword [esp + 0x14], pe_nt_image_headers32
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 8], 5
mov dword [esp + 4], 0x40000000
mov dword [esp], edi
call dword [sym.imp.kernel32.dll_CreateFileW]
mov dword [ebp - 0x244], eax
sub esp, 0x1c
cmp eax, 0xffffffff
je 0x40d1e0
mov dword [esp + 0xc], 2
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_SetFilePointer]
sub esp, 0x10
cmp eax, 0xffffffff
je 0x40ce60
test byte [0x423030], 8
jne 0x40ce00
mov eax, dword [ebp - 0x244]
mov dword [esp + 4], eax
mov eax, dword [ebp + esi*4 - 0x22c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_SetStdHandle]
sub esp, 8
mov dword [esp + 4], 0x3e
mov eax, dword [ebp - 0x25c]
mov dword [esp], ebx
call eax
test eax, eax
je 0x40d240
mov esi, 1
cmp eax, ebx
jbe 0x40cb59
xor ecx, ecx
cmp word [eax - 2], 0x32
sete cl
mov esi, ecx
inc esi
movzx edx, word [eax + 2]
cmp dx, 0x3e
jne 0x40ca40
movzx edx, word [eax + 4]
lea ebx, [eax + 4]
mov ecx, 4
cmp dx, 0x26
jne 0x40ca52
movzx eax, word [ebx + 2]
sub eax, 0x30
mov edi, dword [ebp + eax*4 - 0x22c]
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x254]
mov dword [esp], edi
call eax
lea edx, [ebp - 0x244]
sub esp, 4
mov dword [esp + 0x18], 2
mov dword [esp + 0x14], 1
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], edx
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], eax
mov dword [esp], 0xffffffff
call dword [sym.imp.kernel32.dll_DuplicateHandle]
sub esp, 0x1c
test eax, eax
movzx eax, byte [0x423030]
jne 0x40cbf0
test al, 1
jne 0x40d080
test al, 8
je 0x40cb0b
mov edx, dword [ebp - 0x244]
mov eax, dword [ebp - 0x254]
mov dword [esp], edi
mov dword [ebp - 0x270], edx
call eax
mov edx, dword [ebp - 0x270]
mov ecx, dword [ebp - 0x24c]
sub esp, 4
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], str.Redirect__d___p__to__d___p__n
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x40cb0b
mov eax, dword [ebp - 0x260]
mov dword [esp + 4], 0x3c
mov dword [esp], eax
mov eax, dword [sym.imp.ucrtbase.dll_wcschr]
mov dword [ebp - 0x25c], eax
call eax
test eax, eax
je 0x40ca25
add eax, 2
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], eax
call sym._WCMD_parameter
lea edx, [ebp - 0x220]
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], pe_nt_image_headers32
mov dword [esp + 0x10], 3
mov dword [esp + 0xc], edx
mov dword [esp + 8], 1
mov dword [esp + 4], 0x80000000
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_CreateFileW]
mov dword [ebp - 0x244], eax
sub esp, 0x1c
cmp eax, 0xffffffff
je 0x40d1e0
mov dword [esp + 4], eax
mov dword [esp], 0xfffffff6
call dword [sym.imp.kernel32.dll_SetStdHandle]
sub esp, 8
jmp 0x40ca25
cmp word [esi + 2], 0x3f
jne 0x40c960
mov ebx, dword [ebp - 0x278]
mov dword [esp + 4], edi
mov dword [esp], esi
mov dword [esp + 8], ebx
call sym._memcpy
xor edx, edx
mov word [esi + ebx], dx
mov dword [esp], esi
call sym._WCMD_give_help
nop
mov eax, dword [ebp - 0x250]
mov ebx, dword [sym.imp.ucrtbase.dll_free]
mov dword [esp], eax
call ebx
mov eax, dword [ebp - 0x260]
mov dword [esp], eax
call ebx
mov ebx, 0xfffffff6
mov edi, dword [sym.imp.kernel32.dll_CloseHandle]
mov esi, dword [sym.imp.kernel32.dll_SetStdHandle]
mov dword [ebp - 0x24c], ebx
mov ebx, dword [ebp - 0x274]
mov eax, dword [ebp - 0x24c]
mov ecx, dword [ebp - 0x254]
mov dword [esp], eax
call ecx
sub esp, 4
cmp dword [ebp - 0x258], eax
je 0x40cdd9
mov eax, dword [ebp - 0x24c]
mov ecx, dword [ebp - 0x254]
mov dword [esp], eax
call ecx
sub esp, 4
mov dword [esp], eax
call edi
mov edx, dword [ebp - 0x258]
mov eax, dword [ebp - 0x24c]
sub esp, 4
mov dword [esp + 4], edx
mov dword [esp], eax
call esi
sub esp, 8
inc ebx
cmp ebx, 3
je 0x40ce50
mov eax, dword [ebp + ebx*4 - 0x238]
mov dword [ebp - 0x258], eax
mov eax, dword [ebp + ebx*4 - 0x22c]
mov dword [ebp - 0x24c], eax
jmp 0x40cd89
mov edx, dword [ebp - 0x244]
mov eax, edi
mov dword [ebp - 0x24c], edx
call sym._wine_dbgstr_wn.constprop.0_2
mov edx, dword [ebp - 0x24c]
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0xc], str.Redirect__d_to__s___p__n
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x40cb0b
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
call sym._WCMD_print_error
jmp 0x40cafe
mov ecx, dword [ebp - 0x264]
mov edx, dword [ecx]
mov edx, dword [edx + 8]
test edx, edx
je 0x40c88c
cmp dword [edx + 0xc], 3
jne 0x40c88c
test byte [0x423030], 8
jne 0x40d559
lea edx, [ebp - 0x220]
mov dword [esp], 0x104
mov dword [esp + 4], edx
call dword [sym.imp.kernel32.dll_GetTempPathW]
mov eax, dword [ebp - 0x264]
lea edx, [ebp - 0x220]
sub esp, 8
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [esp + 8], 0
mov dword [esp + 4], 0x4377ec
add eax, 0x14
mov dword [esp], edx
mov dword [esp + 0xc], eax
call dword [sym.imp.kernel32.dll_GetTempFileNameW]
sub esp, 0x10
test byte [0x423030], 8
jne 0x40d519
mov eax, dword [ebp - 0x264]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [esp + 4], str._s____s
add eax, 0x14
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x25c]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x260]
mov dword [esp], eax
call dword [sym.imp.user32.dll_wsprintfW]
test byte [0x423030], 8
je 0x40c8b6
mov eax, dword [ebp - 0x260]
call sym._wine_dbgstr_wn.constprop.0_2
mov dword [esp + 0xc], str.Redirects_now__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x40c8b6
mov eax, esi
call sym._wine_dbgstr_wn.constprop.0_2
mov ecx, dword [ebp - 0x264]
mov dword [esp + 0xc], str.command_on_entry:_s___p__n
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
movzx ebx, byte [0x423030]
jmp 0x40c6fa
mov eax, dword [ebp - 0x250]
call sym._wine_dbgstr_wn.constprop.0_2
mov dword [esp + 0xc], str.Command:__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x40c784
mov ebx, dword [ebp - 0x24c]
mov dword [ebp - 0x268], esi
mov byte [ebp - 0x24c], 1
jmp 0x40c834
mov eax, 0x42c400
call sym._wine_dbgstr_wn.constprop.0_2
mov ebx, eax
mov eax, 0x428400
call sym._wine_dbgstr_wn.constprop.0_2
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.param1:__s__param2:__s_n
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
cmp dword [ebp - 0x268], 0x2f
jne 0x40c956
mov dword [esp + 4], 0
mov ebx, dword [0x4231e8]
mov dword [esp], edi
call sym._WCMD_run_program
mov dword [0x4231e8], ebx
jmp case.0x40c96f.22
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 0xc], str.Duplicating_handle_failed_with_gle__ld_n
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x423030
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0_3
movzx eax, byte [0x423030]
jmp 0x40cbf0
movzx eax, word [eax]
mov dword [esp], eax
call dword [sym.imp.user32.dll_IsCharAlphaW]
sub esp, 4
test eax, eax
je 0x40c901
mov eax, dword [ebp - 0x250]
movzx eax, word [eax + 4]
test ax, 0xffdf
je 0x40d0f1
cmp ax, 9
jne 0x40c901
mov eax, dword [ebp - 0x250]
xor ebx, ebx
mov edx, 0x3d
lea esi, [ebp - 0x244]
mov word [eax + 4], bx
xor eax, eax
jmp 0x40d117
movzx edx, word [eax + 0x437242]
mov word [esi + eax], dx
add eax, 2
test dx, dx
jne 0x40d110
cmp word [ebp - 0x244], 0
mov edx, esi
je 0x40d139
nop
add edx, 2
cmp word [edx], 0
jne 0x40d130
mov ebx, dword [ebp - 0x250]
xor eax, eax
lea esi, [esi]
movzx ecx, word [ebx + eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x40d148
lea eax, [ebp - 0x220]
mov dword [esp + 8], 0x104
mov dword [esp + 4], eax
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_GetEnvironmentVariableW]
sub esp, 0xc
test eax, eax
je 0x40d582
test byte [0x423030], 8
je 0x40d1c7
mov eax, dword [ebp - 0x250]
call sym._wine_dbgstr_wn.constprop.0_2
mov ebx, eax
mov eax, esi
call sym._wine_dbgstr_wn.constprop.0_2
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Got_directory__s_as__s_n
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
mov eax, dword [ebp - 0x250]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_SetCurrentDirectoryW]
sub esp, 4
test eax, eax
jne 0x40d1e5
lea esi, [esi]
call sym._WCMD_print_error
mov eax, dword [ebp - 0x250]
mov ebx, dword [sym.imp.ucrtbase.dll_free]
mov dword [esp], eax
call ebx
mov eax, dword [ebp - 0x260]
mov dword [ebp + 8], eax
lea esp, [ebp - 0xc]
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
jmp eax
mov dword [esp + 0xc], str.Not_touching_redirects_for_a_FOR_or_IF_command_n
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x40c935
mov edi, dword [ebp - 0x280]
mov esi, dword [ebp - 0x284]
jmp 0x40c935
add eax, 0x14
call sym._wine_dbgstr_wn.constprop.0_2
mov dword [esp + 0xc], str.Input_coming_from__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
mov eax, dword [ebp - 0x264]
mov eax, dword [eax]
jmp 0x40c9a8
mov dword [esp], esi
call sym._WCMD_delete
jmp case.0x40c96f.22
mov eax, dword [ebp - 0x27c]
test eax, eax
jne 0x40d05f
cmp dword [ebp - 0x268], 0xb
je 0x40d5f4
cmp dword [ebp - 0x268], 0xe
jne case.0x40c96f.22
mov eax, dword [ebp - 0x264]
mov dword [esp], esi
mov dword [esp + 4], eax
call sym._WCMD_if
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_create_dir
jmp case.0x40c96f.22
call sym._WCMD_rename
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_remove_dir
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_setshow_default
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_verify
jmp case.0x40c96f.22
mov edx, 0x437194
mov eax, 0xfffffff5
call sym._WCMD_output_asis_handle
call sym._WCMD_version
jmp case.0x40c96f.22
mov dword [esp + 4], esi
mov dword [esp], 0
call sym._WCMD_volume
jmp case.0x40c96f.22
call sym._WCMD_endlocal
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_setlocal
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_pushd
jmp case.0x40c96f.22
call sym._WCMD_popd
jmp case.0x40c96f.22
mov dword [esp + 4], 1
mov dword [esp], esi
call sym._WCMD_assoc
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_start
jmp case.0x40c96f.22
call sym._WCMD_setshow_time
jmp case.0x40c96f.22
mov ecx, dword [ebp - 0x26c]
cmp word [ecx], 0
mov eax, ecx
je case.0x40c96f.22
lea esi, [esi]
nop
add eax, 2
cmp word [eax], 0
jne 0x40d3c0
sub eax, dword [ebp - 0x26c]
test eax, eax
jle case.0x40c96f.22
mov eax, dword [ebp - 0x278]
lea eax, [edi + eax + 2]
mov dword [esp], eax
call sym._WCMD_title
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_type
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_copy
jmp case.0x40c96f.22
call sym._WCMD_change_tty
jmp case.0x40c96f.22
call sym._WCMD_setshow_date
jmp case.0x40c96f.22
mov eax, dword [ebp - 0x264]
mov dword [esp], eax
call sym._WCMD_exit
jmp case.0x40c96f.22
call sym._WCMD_color
jmp case.0x40c96f.22
mov dword [esp + 4], 0
mov dword [esp], esi
call sym._WCMD_assoc
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_more
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_choice
jmp case.0x40c96f.22
call sym._WCMD_move
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_setshow_path
jmp case.0x40c96f.22
call sym._WCMD_pause
jmp case.0x40c96f.22
call sym._WCMD_setshow_prompt
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_setshow_env
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_shift
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_mklink
jmp case.0x40c96f.22
mov eax, dword [ebp - 0x26c]
mov dword [esp], eax
call sym._WCMD_echo
jmp case.0x40c96f.22
mov dword [esp + 4], esi
mov dword [esp], 1
call sym._WCMD_volume
jmp case.0x40c96f.22
mov eax, dword [ebp - 0x264]
mov dword [esp], eax
call sym._WCMD_goto
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_directory
jmp case.0x40c96f.22
call sym._WCMD_clear_screen
jmp case.0x40c96f.22
mov dword [esp], esi
call sym._WCMD_call
jmp case.0x40c96f.22
mov eax, dword [ebp - 0x264]
mov eax, dword [eax]
mov eax, dword [eax + 8]
add eax, 0x14
call sym._wine_dbgstr_wn.constprop.0_2
mov dword [esp + 0xc], str.Using_temporary_file_of__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x40cef5
mov dword [esp + 0xc], str.Output_needs_to_be_piped_n
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x40ce9a
mov eax, dword [ebp - 0x250]
mov dword [esp + 4], 0x437832
mov dword [esp + 8], eax
mov dword [esp], eax
call dword [sym.imp.user32.dll_wsprintfW]
test byte [0x423030], 8
je 0x40d1c7
mov eax, dword [ebp - 0x250]
call sym._wine_dbgstr_wn.constprop.0_2
mov dword [esp + 0xc], str.No_special_directory_settings__using_dir_of__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.WCMD_execute
mov dword [esp + 4], 0x423030
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_3
jmp 0x40d17e
and bl, 2
jne 0x40d60b
mov dword [esp], 1
call dword [sym.imp.kernel32.dll_ExitProcess]
mov eax, dword [ebp - 0x264]
mov dword [esp], esi
mov dword [esp + 4], eax
call sym._WCMD_for
jmp case.0x40c96f.22
mov dword [esp + 0xc], str.Out_of_memory_n
mov dword [esp + 8], str.xalloc
mov dword [esp + 4], 0x423030
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_3
jmp 0x40d5e7