Function at 0x414100
Capabilities:
Enumerate files on windows
Enumerate files recursively

Disassembly:
push edi
lea edi, [esp + 8]
and esp, 0xfffffff8
push dword [edi - 4]
push ebp
mov ebp, esp
push edi
push esi
push ebx
push eax
mov eax, 0x8b6c
call fcn.00401050
sub esp, eax
mov eax, dword [esp + eax]
mov dword [esp], 0x250
mov dword [ebp - 0x8b24], eax
mov esi, eax
mov dword [ebp - 0x8b50], edx
call sym._xalloc
mov edi, eax
test esi, esi
je 0x4152ec
mov dword [ebp - 0x8b0c], 0
mov eax, dword [ebp - 0x8b24]
mov dword [ebp - 0x8b2c], 0
mov dword [ebp - 0x8b04], eax
mov dword [ebp - 0x8b08], 0
mov dword [ebp - 0x8b00], 0
lea esi, [esi]
mov eax, dword [ebp - 0x8b04]
mov eax, dword [eax + 4]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x8b24]
mov eax, dword [eax + 4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_lstrcmpW]
sub esp, 8
test eax, eax
jne 0x414305
inc dword [ebp - 0x8b2c]
mov eax, dword [ebp - 0x8b04]
lea esi, [ebp - 0x8a18]
mov ecx, dword [eax + 4]
xor eax, eax
lea esi, [esi]
movzx edx, word [ecx + eax]
mov word [esi + eax], dx
add eax, 2
test dx, dx
jne 0x4141c8
mov eax, dword [ebp - 0x8b04]
cmp word [ebp - 0x8a18], 0
mov edx, esi
mov ebx, dword [eax + 8]
je 0x4141f9
lea esi, [esi]
add edx, 2
cmp word [edx], 0
jne 0x4141f0
xor eax, eax
lea esi, [esi]
nop
movzx ecx, word [ebx + eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x414200
test byte [0x423020], 8
jne 0x414750
imul eax, dword [ebp - 0x8b00], 0x250
mov dword [esp], esi
add eax, edi
mov dword [esp + 4], eax
call dword [sym.imp.kernel32.dll_FindFirstFileW]
sub esp, 8
cmp eax, 0xffffffff
jne 0x414658
mov eax, dword [ebp - 0x8b04]
mov ecx, dword [eax + 4]
xor eax, eax
lea esi, [esi]
movzx edx, word [ecx + eax]
mov word [esi + eax], dx
add eax, 2
test dx, dx
jne 0x414250
mov eax, dword [ebp - 0x8b04]
mov edx, dword [eax + 4]
cmp word [edx], 0
je 0x414794
mov eax, edx
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x414278
sub eax, edx
sar eax, 1
dec eax
mov ecx, dword [0x423164]
xor edx, edx
mov word [ebp + eax*2 - 0x8a18], dx
test ecx, ecx
jne 0x4142ef
mov eax, dword [ebp - 0x8b00]
test eax, eax
setg bl
test byte [ebp - 0x8b50], 1
je 0x4142be
test bl, bl
je 0x4142be
mov dword [esp], 0x436b6a
call sym._WCMD_output_asis
mov eax, dword [0x434580]
test eax, eax
je 0x4142d5
mov eax, dword [ebp - 0x8b0c]
test eax, eax
jne 0x4142ef
test bl, bl
je 0x4142ef
mov dword [esp + 4], esi
mov dword [esp], 0x436b70
call sym._WCMD_output
mov dword [ebp - 0x8b0c], 1
mov eax, dword [ebp - 0x8b04]
mov eax, dword [eax]
mov dword [ebp - 0x8b04], eax
test eax, eax
jne 0x414180
mov ebx, dword [ebp - 0x8b00]
test ebx, ebx
jg 0x41479e
mov eax, dword [sym.imp.ucrtbase.dll_free]
mov ebx, dword [0x434580]
mov dword [ebp - 0x8b58], eax
mov dword [esp], edi
mov eax, dword [ebp - 0x8b58]
call eax
test ebx, ebx
je 0x414628
mov eax, dword [ebp - 0x8b24]
lea esi, [ebp - 0x8810]
mov ecx, dword [eax + 4]
xor eax, eax
lea esi, [esi]
nop
movzx edx, word [ecx + eax]
mov word [esi + eax], dx
add eax, 2
test dx, dx
jne 0x414350
cmp word [ebp - 0x8810], 0
mov edx, esi
je 0x414379
lea esi, [esi]
add edx, 2
cmp word [edx], 0
jne 0x414370
xor eax, eax
mov ecx, 0x2a
jmp 0x41438f
movzx ecx, word [eax + 0x436d4a]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x414388
test byte [0x423020], 8
jne 0x41518b
lea eax, [ebp - 0x4010]
mov dword [esp], esi
mov dword [esp + 4], eax
call dword [sym.imp.kernel32.dll_FindFirstFileW]
mov dword [ebp - 0x8afc], eax
sub esp, 8
cmp eax, 0xffffffff
je 0x414628
mov dword [ebp - 0x8b0c], 0
xor edi, edi
mov dword [ebp - 0x8b00], edi
jmp 0x41440c
lea eax, [ebp - 0x4010]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x8afc]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_FindNextFileW]
sub esp, 8
test eax, eax
je 0x415010
test byte [ebp - 0x4010], 0x10
je 0x4143e8
lea edi, [ebp - 0x3fe4]
mov dword [esp + 4], 0x436c44
mov ebx, dword [sym.imp.kernel32.dll_lstrcmpW]
mov dword [esp], edi
call ebx
sub esp, 8
test eax, eax
je 0x4143e8
mov dword [esp + 4], 0x436c40
mov dword [esp], edi
call ebx
sub esp, 8
test eax, eax
je 0x4143e8
mov eax, dword [ebp - 0x8b2c]
test eax, eax
jle 0x41538f
mov dword [ebp - 0x8b08], eax
mov eax, dword [ebp - 0x8b24]
mov ebx, dword [ebp - 0x8b0c]
mov dword [ebp - 0x8b04], eax
dec dword [ebp - 0x8b08]
mov eax, dword [ebp - 0x8b24]
mov ecx, dword [eax + 4]
xor eax, eax
movzx edx, word [ecx + eax]
mov word [esi + eax], dx
add eax, 2
test dx, dx
jne 0x414480
cmp word [ebp - 0x8810], 0
mov edx, esi
je 0x4144a9
lea esi, [esi]
add edx, 2
cmp word [edx], 0
jne 0x4144a0
xor eax, eax
lea esi, [esi]
nop
movzx ecx, word [edi + eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x4144b0
cmp word [ebp - 0x8810], 0
mov edx, esi
je 0x4144d9
lea esi, [esi]
add edx, 2
cmp word [edx], 0
jne 0x4144d0
xor eax, eax
mov ecx, 0x5c
jmp 0x4144ef
movzx ecx, word [eax + 0x436d6c]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x4144e8
test byte [0x423020], 8
jne 0x415157
mov dword [esp], 0xc
call sym._xalloc
mov ecx, eax
mov eax, dword [ebp - 0x8b00]
test eax, eax
cmove eax, ecx
mov dword [ebp - 0x8b00], eax
test ebx, ebx
je 0x41452d
mov dword [ebx], ecx
cmp word [ebp - 0x8810], 0
mov dword [ecx], 0
je 0x415241
mov ebx, esi
lea esi, [esi]
nop
add ebx, 2
cmp word [ebx], 0
jne 0x414548
sub ebx, esi
add ebx, 2
mov dword [esp], ebx
mov dword [ebp - 0x8b10], ecx
call sym._xalloc
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov dword [esp], eax
mov dword [ebp - 0x8b0c], eax
call sym._memcpy
mov edx, dword [ebp - 0x8b0c]
mov ecx, dword [ebp - 0x8b10]
mov eax, dword [ebp - 0x8b04]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
test edx, edx
je 0x41523a
cmp word [edx], 0
je 0x415256
mov ebx, edx
lea esi, [esi]
lea esi, [esi]
add ebx, 2
cmp word [ebx], 0
jne 0x4145b0
sub ebx, edx
lea eax, [ebx + 2]
mov dword [ebp - 0x8b0c], eax
mov eax, dword [ebp - 0x8b0c]
mov dword [ebp - 0x8b14], ecx
mov dword [ebp - 0x8b10], edx
mov dword [esp], eax
call sym._xalloc
mov edx, dword [ebp - 0x8b10]
mov ebx, eax
mov eax, dword [ebp - 0x8b0c]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp], ebx
call sym._memcpy
mov ecx, dword [ebp - 0x8b14]
mov eax, dword [ebp - 0x8b04]
mov edx, dword [ebp - 0x8b08]
mov dword [ecx + 8], ebx
mov eax, dword [eax]
mov dword [ebp - 0x8b04], eax
test edx, edx
je 0x41524b
mov ebx, ecx
jmp 0x41446f
mov edi, dword [ebp - 0x8b50]
mov eax, dword [0x423338]
add eax, dword [0x42334c]
or edi, eax
je 0x415087
mov eax, dword [ebp - 0x8b04]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
lea esp, [edi - 8]
pop edi
ret
mov dword [ebp - 0x8afc], eax
mov ebx, dword [ebp - 0x8b00]
jmp 0x4146b7
add ebx, 2
mov dword [esp], edi
imul ebx, ebx, 0x250
mov dword [esp + 4], ebx
call dword [sym.imp.ucrtbase.dll_realloc]
mov edi, eax
test eax, eax
je 0x415335
lea eax, [eax + ebx - 0x250]
mov ebx, dword [ebp - 0x8b00]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x8afc]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_FindNextFileW]
sub esp, 8
test eax, eax
je 0x414730
imul eax, ebx, 0x250
mov ecx, dword [0x423160]
add eax, edi
mov edx, dword [eax]
and ecx, edx
cmp ecx, dword [0x434590]
jne 0x41469d
lea ecx, [ebx + 1]
mov dword [ebp - 0x8b00], ecx
mov ecx, dword [0x4347e0]
or ecx, dword [0x424518]
je 0x414670
cmp word [eax + 0x2c], 0
lea ecx, [eax + 0x2c]
je 0x414788
mov eax, ecx
lea esi, [esi]
nop
add eax, 2
cmp word [eax], 0
jne 0x414700
sub eax, ecx
sar eax, 1
lea ecx, [eax + 3]
add eax, 5
and edx, 0x10
cmovne ecx, eax
mov eax, dword [ebp - 0x8b08]
cmp eax, ecx
cmovge ecx, eax
mov dword [ebp - 0x8b08], ecx
jmp 0x414670
mov dword [ebp - 0x8b00], ebx
mov ebx, dword [ebp - 0x8afc]
mov dword [esp], ebx
call dword [sym.imp.kernel32.dll_FindClose]
sub esp, 4
jmp 0x414242
mov eax, esi
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0xc], str.Looking_for_matches_to__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.WCMD_list_directory
mov dword [esp + 4], 0x423020
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_2
jmp 0x41421d
xor eax, eax
mov ecx, 3
jmp 0x414710
mov eax, 0xffffffff
jmp 0x414286
mov eax, dword [ebp - 0x8b00]
mov dword [esp + 0xc], sym._WCMD_dir_sort
mov dword [esp + 8], 0x250
mov dword [esp + 4], eax
mov dword [esp], edi
call dword [sym.imp.ucrtbase.dll_qsort]
movzx ecx, byte [0x423020]
and ecx, 8
jne 0x4151bf
mov eax, dword [0x4347e0]
or eax, dword [0x424518]
je 0x415265
mov eax, dword [0x4234e8]
cdq
idiv dword [ebp - 0x8b08]
mov edx, 1
test eax, eax
cmovg edx, eax
mov eax, dword [ebp - 0x8b00]
mov esi, edx
mov dword [ebp - 0x8b4c], edx
cdq
idiv esi
mov dword [ebp - 0x8b18], eax
test edx, edx
jne 0x4150d9
mov ecx, dword [ebp - 0x8b18]
test ecx, ecx
jle 0x4152ab
mov eax, dword [0x424518]
mov esi, dword [ebp - 0x8b4c]
mov dword [ebp - 0x8b28], edi
mov dword [ebp - 0x8b44], 0
mov dword [ebp - 0x8b14], esi
mov esi, dword [sym.imp.ucrtbase.dll_free]
mov dword [ebp - 0x8b40], 0
mov dword [ebp - 0x8b30], 0
mov dword [ebp - 0x8b3c], 0
mov dword [ebp - 0x8b38], 0
mov dword [ebp - 0x8b58], esi
lea esi, [esi]
mov dword [ebp - 0x8b48], 1
mov esi, dword [ebp - 0x8b30]
mov dword [ebp - 0x8b0c], 0
mov dword [ebp - 0x8b10], esi
mov esi, dword [ebp - 0x8b14]
sub esi, dword [ebp - 0x8b4c]
mov dword [ebp - 0x8b54], esi
mov edi, esi
test eax, eax
je 0x414a7d
lea esi, [esi]
mov eax, dword [ebp - 0x8b10]
mov esi, dword [ebp - 0x8b00]
mov ebx, eax
cmp eax, esi
jge 0x414a57
imul ebx, ebx, 0x250
mov edx, dword [0x4234e0]
add ebx, dword [ebp - 0x8b28]
lea eax, [ebx + 0x2c]
mov dword [ebp - 0x8afc], eax
test edx, edx
jne 0x414b00
mov eax, dword [0x4346e4]
test eax, eax
jne 0x414b16
mov eax, dword [0x423334]
lea esi, [ebp - 0x8ae0]
mov dword [esp + 4], esi
cmp eax, 2
je 0x414df8
cmp eax, 1
je 0x414cf0
lea eax, [ebx + 4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_FileTimeToLocalFileTime]
sub esp, 8
lea eax, [ebp - 0x8ad8]
mov dword [esp], esi
lea esi, [ebp - 0x8a98]
mov dword [esp + 4], eax
call dword [sym.imp.kernel32.dll_FileTimeToSystemTime]
lea eax, [ebp - 0x8ad8]
sub esp, 8
mov dword [esp + 0x14], 0x20
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], 0x4231e0
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0x400
call dword [sym.imp.kernel32.dll_GetDateFormatW]
lea ecx, [ebp - 0x8a58]
lea eax, [ebp - 0x8ad8]
sub esp, 0x18
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], 0x20
mov dword [esp + 0xc], 0x4345a0
mov dword [esp + 8], eax
mov dword [esp + 4], 2
mov dword [esp], 0x400
call dword [sym.imp.kernel32.dll_GetTimeFormatW]
mov eax, dword [0x4347e0]
lea ecx, [ebp - 0x8a58]
sub esp, 0x18
test eax, eax
je 0x414a90
test byte [ebx], 0x10
je 0x414d08
mov eax, dword [ebp - 0x8afc]
mov dword [esp], 0x436bca
mov dword [esp + 4], eax
call sym._WCMD_output
inc dword [ebp - 0x8b38]
cmp word [ebx + 0x2c], 0
mov eax, dword [ebp - 0x8afc]
je 0x414a19
lea esi, [esi]
add eax, 2
cmp word [eax], 0
jne 0x414a10
mov esi, dword [ebp - 0x8b0c]
sub eax, dword [ebp - 0x8afc]
sar eax, 1
lea eax, [esi + eax + 2]
mov ebx, dword [ebp - 0x8b08]
add dword [ebp - 0x8b0c], ebx
mov esi, dword [ebp - 0x8b0c]
mov edx, esi
add edx, ebx
cmp edx, dword [0x4234e8]
jle 0x414e58
mov dword [ebp - 0x8b0c], 0
mov esi, dword [ebp - 0x8b18]
inc edi
add dword [ebp - 0x8b10], esi
cmp dword [ebp - 0x8b14], edi
je 0x414e10
mov eax, dword [0x424518]
test eax, eax
jne 0x4148c0
mov ebx, edi
cmp edi, dword [ebp - 0x8b00]
jl 0x4148d6
jmp 0x414a57
mov eax, dword [0x423164]
mov dword [ebp - 0x8b34], eax
test byte [ebx], 0x10
je 0x414d80
inc dword [ebp - 0x8b38]
test eax, eax
jne 0x414e79
mov dword [esp + 4], esi
mov dword [esp + 8], ecx
mov dword [esp], str._1___2_____DIR_
call sym._WCMD_output
mov esi, dword [0x43458c]
test esi, esi
jne 0x414eda
mov esi, dword [0x4346e4]
test esi, esi
jne 0x414efe
mov eax, dword [ebp - 0x8afc]
mov dword [esp], 0x436bd4
mov dword [esp + 4], eax
call sym._WCMD_output
jmp 0x414a57
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll__wcslwr]
mov eax, dword [0x4346e4]
test eax, eax
je 0x414906
mov eax, dword [ebp - 0x8b24]
lea edx, [ebp - 0x8810]
mov esi, dword [eax + 4]
xor eax, eax
lea esi, [esi]
nop
movzx ecx, word [esi + eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x414b30
cmp word [ebp - 0x8810], 0
mov ecx, edx
je 0x414b59
lea esi, [esi]
add ecx, 2
cmp word [ecx], 0
jne 0x414b50
xor eax, eax
lea esi, [esi]
nop
movzx esi, word [ebx + eax + 0x2c]
mov word [ecx + eax], si
add eax, 2
test si, si
jne 0x414b60
xor eax, eax
mov dword [esp], edx
mov esi, dword [sym.imp.advapi32.dll_GetFileSecurityW]
mov word [ebp - 0x8ac8], ax
lea eax, [ebp - 0x8af8]
mov dword [ebp - 0x8b34], edx
mov dword [ebp - 0x8af8], 0
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 1
call esi
mov edx, dword [ebp - 0x8b34]
sub esp, 0x14
mov eax, dword fs:[0x18]
cmp dword [eax + 0x34], 0x7a
jne 0x414906
mov eax, dword [ebp - 0x8af8]
test eax, eax
je 0x414906
mov dword [esp], eax
mov dword [ebp - 0x8b5c], edx
mov dword [ebp - 0x8af4], 0
mov dword [ebp - 0x8af0], 0
mov dword [ebp - 0x8aec], 0x2000
mov dword [ebp - 0x8ae8], 0x2000
call sym._xalloc
mov dword [esp + 4], 1
mov edx, eax
mov dword [ebp - 0x8b34], eax
lea eax, [ebp - 0x8af8]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x8af8]
mov dword [esp + 8], edx
mov edx, dword [ebp - 0x8b5c]
mov dword [esp + 0xc], eax
mov dword [esp], edx
call esi
sub esp, 0x14
test eax, eax
je 0x414cd6
lea eax, [ebp - 0x8af0]
mov dword [esp + 8], eax
lea eax, [ebp - 0x8af4]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x8b34]
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_GetSecurityDescriptorOwner]
sub esp, 0xc
test eax, eax
je 0x414cd6
lea eax, [ebp - 0x8ae4]
lea edx, [ebp - 0x8010]
mov dword [esp], 0
mov dword [esp + 0x18], eax
lea eax, [ebp - 0x8ae8]
lea esi, [ebp - 0x4010]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0x8aec]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x8af4]
mov dword [esp + 8], edx
mov dword [esp + 0x10], esi
mov dword [esp + 4], eax
call dword [sym.imp.advapi32.dll_LookupAccountSidW]
lea edx, [ebp - 0x8010]
sub esp, 0x1c
test eax, eax
jne 0x415124
mov eax, dword [ebp - 0x8b34]
mov dword [esp], eax
mov eax, dword [ebp - 0x8b58]
call eax
jmp 0x414906
lea eax, [ebx + 0xc]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_FileTimeToLocalFileTime]
sub esp, 8
jmp 0x414936
mov esi, dword [ebp - 0x8afc]
mov dword [esp], 0x436bd4
mov dword [esp + 4], esi
call sym._WCMD_output
cmp word [ebx + 0x2c], 0
je 0x414f51
mov eax, esi
lea esi, [esi]
nop
add eax, 2
cmp word [eax], 0
jne 0x414d30
mov esi, dword [ebx + 0x20]
sub eax, dword [ebp - 0x8afc]
sar eax, 1
inc dword [ebp - 0x8b3c]
add eax, dword [ebp - 0x8b0c]
mov dword [ebp - 0x8b20], esi
mov esi, dword [ebx + 0x1c]
mov edx, dword [ebp - 0x8b20]
add dword [ebp - 0x8b44], edx
mov dword [ebp - 0x8b1c], esi
mov ecx, dword [ebp - 0x8b1c]
adc dword [ebp - 0x8b40], ecx
jmp 0x414a2b
mov eax, dword [ebx + 0x20]
mov ecx, dword [ebp - 0x8b34]
inc dword [ebp - 0x8b3c]
mov dword [ebp - 0x8b20], eax
mov eax, dword [ebx + 0x1c]
mov dword [ebp - 0x8b1c], eax
mov eax, dword [ebp - 0x8b20]
mov edx, dword [ebp - 0x8b1c]
add dword [ebp - 0x8b44], eax
adc dword [ebp - 0x8b40], edx
test ecx, ecx
je 0x414eaa
mov ebx, dword [0x434580]
mov eax, 0x436b3c
test ebx, ebx
je 0x414dd6
mov eax, dword [ebp - 0x8b24]
mov eax, dword [eax + 4]
mov esi, dword [ebp - 0x8afc]
mov dword [esp + 4], eax
mov dword [esp], str._1_2
mov dword [esp + 8], esi
call sym._WCMD_output
jmp 0x414a57
lea eax, [ebx + 0x14]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_FileTimeToLocalFileTime]
sub esp, 8
jmp 0x414936
mov ecx, dword [ebp - 0x8b48]
test ecx, ecx
jne 0x414f19
mov esi, dword [ebp - 0x8b54]
mov edi, dword [ebp - 0x8b4c]
inc dword [ebp - 0x8b30]
mov eax, dword [ebp - 0x8b30]
lea esi, [esi + edi*2]
mov dword [ebp - 0x8b14], esi
cmp dword [ebp - 0x8b18], eax
jle 0x414f5c
mov eax, dword [0x424518]
jmp 0x414880
mov edx, esi
mov dword [esp + 8], 0x436b3c
sub edx, eax
mov dword [esp], str._1_s_
mov dword [esp + 4], edx
call sym._WCMD_output
jmp 0x414a57
mov eax, dword [ebp - 0x8afc]
mov dword [esp + 4], 0x436c40
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_lstrcmpW]
sub esp, 8
test eax, eax
jne 0x414f2a
mov dword [ebp - 0x8b48], 0
jmp 0x414a57
call sym._WCMD_filesize64
lea ecx, [ebp - 0x8a58]
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp], str._1___2_____3_14s_
call sym._WCMD_output
mov eax, dword [0x43458c]
test eax, eax
je 0x414ad4
add ebx, 0x234
mov dword [esp], str._1__13s_
mov dword [esp + 4], ebx
call sym._WCMD_output
mov esi, dword [0x4346e4]
test esi, esi
je 0x414ae2
lea eax, [ebp - 0x8ac8]
mov dword [esp], str._1__23s_
mov dword [esp + 4], eax
call sym._WCMD_output
jmp 0x414ae2
mov dword [esp], 0x436b6a
call sym._WCMD_output_asis
jmp 0x414e1e
mov eax, dword [ebp - 0x8afc]
mov dword [esp + 4], 0x436c44
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_lstrcmpW]
sub esp, 8
test eax, eax
je 0x414e9b
jmp 0x414dbe
mov eax, dword [ebp - 0x8afc]
jmp 0x414d39
mov eax, dword [0x423164]
mov edi, dword [ebp - 0x8b28]
test eax, eax
jne 0x414fa8
cmp dword [ebp - 0x8b3c], 1
je 0x415280
mov edx, dword [ebp - 0x8b40]
mov eax, dword [ebp - 0x8b44]
call sym._WCMD_filesize64
mov dword [esp], str._1_8d__files__2_24s__bytes_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x8b3c]
mov dword [esp + 4], eax
call sym._WCMD_output
mov eax, dword [0x423164]
mov ebx, dword [ebp - 0x8b44]
add dword [0x4231c0], ebx
mov ebx, dword [0x434580]
mov esi, dword [ebp - 0x8b40]
adc dword [0x4231c4], esi
mov esi, dword [ebp - 0x8b3c]
add dword [0x42334c], esi
mov esi, dword [ebp - 0x8b38]
add dword [0x423338], esi
or eax, ebx
jne 0x414324
cmp esi, 1
je 0x415316
mov eax, dword [ebp - 0x8b38]
mov dword [esp], str._1_8d__directories
mov dword [esp + 4], eax
call sym._WCMD_output
mov ebx, dword [0x434580]
jmp 0x414324
mov eax, dword [ebp - 0x8afc]
mov edi, dword [ebp - 0x8b00]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_FindClose]
sub esp, 4
test edi, edi
je 0x414628
mov ebx, dword [ebp - 0x8b58]
mov edx, 1
mov eax, edi
call sym._WCMD_list_directory
mov dword [ebp - 0x8afc], eax
cmp edi, eax
je 0x41507f
lea esi, [esi]
mov esi, edi
mov edi, dword [edi]
mov edx, dword [esi + 4]
mov dword [esp], edx
call ebx
mov edx, dword [esi + 8]
mov dword [esp], edx
call ebx
mov dword [esp], esi
call ebx
cmp dword [ebp - 0x8afc], edi
jne 0x415050
mov eax, dword [ebp - 0x8afc]
test eax, eax
je 0x414628
mov edi, dword [ebp - 0x8afc]
jmp 0x415036
mov eax, dword fs:[0x18]
mov dword [eax + 0x34], 2
call sym._WCMD_print_error
mov dword [0x423344], 1
jmp 0x414641
mov eax, dword [0x4234e8]
cdq
idiv dword [ebp - 0x8b08]
mov edx, 1
test eax, eax
cmovg edx, eax
mov eax, dword [ebp - 0x8b00]
mov esi, edx
mov dword [ebp - 0x8b4c], edx
cdq
idiv esi
mov dword [ebp - 0x8b18], eax
test edx, edx
je 0x4150df
inc dword [ebp - 0x8b18]
test cl, cl
je 0x414817
mov eax, dword [ebp - 0x8b18]
mov dword [esp + 0xc], str.cols_d__rows_d_n
mov dword [esp + 8], str.WCMD_list_directory
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x8b4c]
mov dword [esp + 4], 0x423020
mov dword [esp + 0x10], eax
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_2
jmp 0x414817
lea eax, [ebp - 0x8ac8]
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], 0x5c
mov dword [esp + 0xc], esi
mov dword [esp + 8], str._s_c_s
mov dword [esp + 4], 0x18
mov dword [esp], eax
call sym._swprintf.constprop.0_1
jmp 0x414cd6
mov eax, esi
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0xc], str.Recursive__Adding_to_search_list__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.WCMD_list_directory
mov dword [esp + 4], 0x423020
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_2
jmp 0x414508
mov eax, esi
call sym._wine_dbgstr_wn.constprop.0_1
mov dword [esp + 0xc], str.Recursive__looking_for__s_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.WCMD_list_directory
mov dword [esp + 4], 0x423020
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0_2
jmp 0x4143a8
mov eax, dword [ebp - 0x8b08]
mov dword [esp + 0xc], str._d_entries__maxwidth_d__widest_d_n
mov dword [esp + 8], str.WCMD_list_directory
mov dword [esp + 0x18], eax
mov eax, dword [0x4234e8]
mov dword [esp + 4], 0x423020
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x8b00]
mov dword [esp], 3
mov dword [esp + 0x10], eax
call sym._wine_dbg_log.constprop.0_2
movzx ecx, byte [0x423020]
mov eax, dword [0x4347e0]
and ecx, 8
or eax, dword [0x424518]
jne 0x4150a8
test cl, cl
je 0x415265
mov dword [ebp - 0x8b4c], 1
mov eax, dword [ebp - 0x8b00]
mov dword [ebp - 0x8b18], eax
jmp 0x4150e7
xor ebx, ebx
jmp 0x414602
mov ebx, 2
jmp 0x414556
mov dword [ebp - 0x8b0c], ecx
jmp 0x4143e8
mov dword [ebp - 0x8b0c], 2
jmp 0x4145c4
mov dword [ebp - 0x8b4c], 1
mov esi, dword [ebp - 0x8b00]
mov dword [ebp - 0x8b18], esi
jmp 0x41482a
mov edx, dword [ebp - 0x8b40]
mov eax, dword [ebp - 0x8b44]
call sym._WCMD_filesize64
mov dword [esp], str._______1_file__1_25s__bytes_n
mov dword [esp + 4], eax
call sym._WCMD_output
mov eax, dword [0x423164]
jmp 0x414fa8
mov eax, dword [0x423164]
mov dword [ebp - 0x8b38], eax
test eax, eax
jne 0x41536d
mov dword [ebp - 0x8b3c], 0
mov eax, dword [sym.imp.ucrtbase.dll_free]
mov dword [ebp - 0x8b44], 0
mov dword [ebp - 0x8b40], 0
mov dword [ebp - 0x8b58], eax
jmp 0x414f78
mov eax, dword [sym.imp.ucrtbase.dll_free]
mov ebx, dword [0x434580]
mov dword [ebp - 0x8b04], 0
mov dword [ebp - 0x8b2c], 0
mov dword [ebp - 0x8b58], eax
jmp 0x414324
mov dword [esp + 4], 1
mov dword [esp], str._1_8d__directory
call sym._WCMD_output
mov ebx, dword [0x434580]
jmp 0x414324
mov esi, dword [ebp - 0x8afc]
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_FindClose]
sub esp, 4
test byte [0x423020], 2
jne 0x4153a0
mov eax, dword [ebp - 0x8b04]
mov dword [0x423344], 1
mov eax, dword [eax]
mov dword [ebp - 0x8b04], eax
jmp 0x414641
mov ebx, dword [0x434580]
or dword [ebp - 0x8b38], ebx
mov eax, dword [sym.imp.ucrtbase.dll_free]
mov dword [ebp - 0x8b58], eax
jne 0x414324
jmp 0x414fef
mov eax, dword [ebp - 0x8b24]
mov dword [ebp - 0x8b04], eax
jmp 0x4143e8
mov dword [esp + 0xc], 0x436b5b
mov dword [esp + 8], str.WCMD_list_directory
mov dword [esp + 4], 0x423020
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_2
jmp 0x415350