Function at 0x442f20
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
xor ebx, ebx
lea eax, [ebp - 0x2a8]
sub esp, 0x2dc
cmp dword [ebp + 8], 0x20
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 0x2ac], 0
mov word [ebp - 0x2a8], bx
je 0x442f70
xor ebx, ebx
cmp dword [ebp + 8], 0x40
je 0x443340
lea esp, [ebp - 0xc]
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret 4
lea eax, [ebp - 0x280]
mov dword [esp], ecx
mov ecx, eax
mov dword [ebp - 0x2cc], eax
call fcn.00442a10
sub esp, 4
mov dword [esp], 0x73baf8
call sub.msvcrt.dll_wcslen
mov edx, 0x3fffffff
sub edx, dword [ebp - 0x27c]
cmp eax, edx
ja 0x443566
mov ecx, dword [ebp - 0x2cc]
mov dword [esp + 4], eax
mov dword [esp], 0x73baf8
call fcn.006c6070
lea ebx, [ebp - 0x260]
lea edx, [eax + 8]
sub esp, 8
mov dword [ebp - 0x268], ebx
mov ecx, dword [eax]
cmp ecx, edx
je 0x443450
mov dword [ebp - 0x268], ecx
mov ecx, dword [eax + 8]
mov dword [ebp - 0x260], ecx
mov ecx, dword [eax + 4]
lea edi, [ebp - 0x268]
mov dword [ebp - 0x2bc], edi
mov dword [ebp - 0x264], ecx
mov dword [eax], edx
xor ecx, ecx
mov edx, dword [ebp - 0x268]
mov dword [eax + 4], 0
mov word [eax + 8], cx
mov eax, dword [ebp - 0x2b0]
cmp edx, ebx
je 0x4434b3
lea edi, [ebp - 0x2a8]
mov esi, dword [ebp - 0x264]
mov ecx, dword [ebp - 0x260]
cmp eax, edi
je 0x443420
test eax, eax
mov edi, dword [ebp - 0x2a8]
mov dword [ebp - 0x2b0], edx
mov dword [ebp - 0x2ac], esi
mov dword [ebp - 0x2a8], ecx
je 0x44307e
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x260], edi
xor edi, edi
cmp eax, ebx
mov dword [ebp - 0x264], 0
mov word [eax], di
je 0x44307e
mov dword [esp], eax
call fcn.006febf0
mov eax, dword [ebp - 0x280]
lea edi, [ebp - 0x278]
mov dword [ebp - 0x2c4], edi
cmp eax, edi
je 0x44309c
mov dword [esp], eax
call fcn.006febf0
mov eax, dword [ebp - 0x2bc]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x2b0]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
sub esp, 8
cmp eax, 0xffffffff
mov edi, eax
mov ebx, 0x303
jne 0x443148
jmp 0x44329c
cmp dword [ebp - 0x2c0], 1
mov ecx, dword [ebp - 0x298]
jne 0x443333
movzx esi, word [ebp - 0x23c]
mov word [ecx], si
xor esi, esi
cmp dword [ebp + 8], 0x20
mov dword [ebp - 0x294], 1
mov word [ecx + eax*2], si
je 0x4435be
cmp dword [ebp + 8], 0x40
je 0x4435ec
xor esi, esi
lea eax, [ebp - 0x290]
cmp ebx, esi
cmovl ebx, esi
cmp ecx, eax
je 0x44312a
mov dword [esp], ecx
call fcn.006febf0
mov eax, dword [ebp - 0x2bc]
mov dword [esp], edi
mov dword [esp + 4], eax
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
sub esp, 8
test eax, eax
je 0x443290
test byte [ebp - 0x268], 0x10
jne 0x44312a
lea esi, [ebp - 0x23c]
lea eax, [ebp - 0x290]
mov dword [esp], esi
mov dword [ebp - 0x298], eax
call sub.msvcrt.dll_wcslen
lea edx, [eax + eax]
mov dword [ebp - 0x2c8], edx
sar edx, 1
cmp edx, 7
mov dword [ebp - 0x2c0], edx
mov dword [ebp - 0x280], edx
jbe 0x4430d0
mov eax, dword [ebp - 0x2cc]
lea ecx, [ebp - 0x298]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.006c61c0
mov ecx, eax
mov dword [ebp - 0x298], eax
mov eax, dword [ebp - 0x280]
sub esp, 8
mov dword [ebp - 0x290], eax
mov eax, dword [ebp - 0x2c8]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_memcpy
mov edx, dword [ebp - 0x280]
mov ecx, dword [ebp - 0x298]
xor esi, esi
cmp dword [ebp + 8], 0x20
mov dword [ebp - 0x294], edx
mov word [ecx + edx*2], si
je 0x4432c4
xor esi, esi
cmp dword [ebp + 8], 0x40
jne 0x443113
cmp edx, 9
jbe 0x4435ec
mov eax, dword [ebp - 0x2c4]
sub edx, 0xa
mov esi, 3
cmp edx, 3
cmova edx, esi
mov dword [ebp - 0x280], eax
lea eax, [ecx + 0x14]
add edx, edx
mov esi, eax
add esi, edx
je 0x443238
test eax, eax
je 0x4435e0
mov esi, edx
sar esi, 1
cmp edx, 2
je 0x443440
test edx, edx
jne 0x4434d0
xor eax, eax
mov dword [ebp - 0x27c], esi
mov word [ebp + edx - 0x278], ax
mov eax, dword [ebp - 0x2c4]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wtoi]
mov esi, eax
mov eax, dword [ebp - 0x280]
cmp eax, dword [ebp - 0x2c4]
je 0x443284
mov dword [esp], eax
call fcn.006febf0
mov ecx, dword [ebp - 0x298]
jmp 0x443113
mov dword [esp], edi
call dword [sym.imp.KERNEL32.dll_FindClose]
sub esp, 4
mov eax, dword [ebp - 0x2b0]
lea edi, [ebp - 0x2a8]
cmp eax, edi
je 0x442f5d
mov dword [esp], eax
call fcn.006febf0
lea esp, [ebp - 0xc]
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret 4
cmp edx, 5
jbe 0x4435be
mov eax, dword [ebp - 0x2c4]
sub edx, 6
mov esi, 3
cmp edx, 3
cmova edx, esi
mov dword [ebp - 0x280], eax
lea eax, [ecx + 0xc]
add edx, edx
mov esi, eax
add esi, edx
je 0x4432fa
test eax, eax
je 0x443578
mov esi, edx
sar esi, 1
cmp edx, 2
je 0x443410
test edx, edx
jne 0x443480
mov eax, dword [ebp - 0x2c4]
xor ecx, ecx
mov dword [ebp - 0x27c], esi
mov word [ebp + edx - 0x278], cx
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__wtoi]
jmp 0x44326c
test edx, edx
je 0x4431e0
jmp 0x4431be
lea eax, [ebp - 0x280]
mov dword [esp], ecx
mov ecx, eax
mov dword [ebp - 0x2cc], eax
call fcn.00442a10
sub esp, 4
mov dword [esp], str.SDIO_x64_R.exe
call sub.msvcrt.dll_wcslen
mov edx, 0x3fffffff
sub edx, dword [ebp - 0x27c]
cmp eax, edx
ja 0x443584
mov ecx, dword [ebp - 0x2cc]
mov dword [esp + 4], eax
mov dword [esp], str.SDIO_x64_R.exe
call fcn.006c6070
lea ebx, [ebp - 0x260]
lea edx, [eax + 8]
sub esp, 8
mov dword [ebp - 0x268], ebx
mov ecx, dword [eax]
cmp ecx, edx
je 0x443503
mov dword [ebp - 0x268], ecx
mov ecx, dword [eax + 8]
mov dword [ebp - 0x260], ecx
mov ecx, dword [eax + 4]
lea edi, [ebp - 0x268]
mov dword [ebp - 0x2bc], edi
mov dword [ebp - 0x264], ecx
mov dword [eax], edx
xor edx, edx
mov word [eax + 8], dx
mov edx, dword [ebp - 0x268]
mov dword [eax + 4], 0
mov eax, dword [ebp - 0x2b0]
cmp edx, ebx
jne 0x443021
lea ecx, [ebp - 0x2b0]
mov dword [esp], edi
call fcn.006c6110
mov eax, dword [ebp - 0x268]
sub esp, 4
jmp 0x443063
movzx eax, word [ecx + 0xc]
mov word [ebp - 0x278], ax
jmp 0x44330f
mov dword [ebp - 0x2b0], edx
mov dword [ebp - 0x2ac], esi
mov dword [ebp - 0x2a8], ecx
jmp 0x44307e
movzx eax, word [ecx + 0x14]
mov word [ebp - 0x278], ax
jmp 0x44324d
mov ecx, dword [eax + 8]
mov dword [ebp - 0x260], ecx
mov ecx, dword [edx + 4]
mov dword [ebp - 0x25c], ecx
mov ecx, dword [edx + 8]
mov dword [ebp - 0x258], ecx
mov ecx, dword [edx + 0xc]
mov dword [ebp - 0x254], ecx
jmp 0x442fe9
mov dword [ebp - 0x2c8], esi
mov esi, dword [ebp - 0x2c4]
xor ecx, ecx
mov dword [ebp - 0x2c0], ebx
movzx ebx, byte [eax + ecx]
mov byte [esi + ecx], bl
add ecx, 1
cmp ecx, edx
jb 0x443494
mov ebx, dword [ebp - 0x2c0]
mov esi, dword [ebp - 0x2c8]
jmp 0x44330f
lea ecx, [ebp - 0x2b0]
mov dword [esp], edi
call fcn.006c6110
mov eax, dword [ebp - 0x268]
sub esp, 4
jmp 0x443063
mov dword [ebp - 0x2c8], esi
mov esi, dword [ebp - 0x2c4]
xor ecx, ecx
mov dword [ebp - 0x2c0], ebx
movzx ebx, byte [eax + ecx]
mov byte [esi + ecx], bl
add ecx, 1
cmp ecx, edx
jb 0x4434e4
mov ebx, dword [ebp - 0x2c0]
mov esi, dword [ebp - 0x2c8]
jmp 0x44324d
mov ecx, dword [eax + 8]
mov dword [ebp - 0x260], ecx
mov ecx, dword [edx + 4]
mov dword [ebp - 0x25c], ecx
mov ecx, dword [edx + 8]
mov dword [ebp - 0x258], ecx
mov ecx, dword [edx + 0xc]
mov dword [ebp - 0x254], ecx
jmp 0x4433b9
mov ebx, eax
mov eax, dword [ebp - 0x280]
lea edx, [ebp - 0x278]
cmp eax, edx
je 0x443546
mov dword [esp], eax
call fcn.006febf0
mov eax, dword [ebp - 0x2b0]
lea edi, [ebp - 0x2a8]
cmp eax, edi
je 0x44355e
mov dword [esp], eax
call fcn.006febf0
mov dword [esp], ebx
call fcn.005e6130
mov dword [esp], 0x73b91e
call fcn.006e46c0
jmp 0x44352c
mov dword [esp], 0x73b8ec
call fcn.006e4530
mov dword [esp], 0x73b91e
call fcn.006e46c0
mov ebx, eax
mov eax, dword [ebp - 0x280]
cmp eax, dword [ebp - 0x2c4]
je 0x4435a8
mov dword [esp], eax
call fcn.006febf0
mov eax, dword [ebp - 0x298]
lea edi, [ebp - 0x290]
cmp eax, edi
jne 0x44353e
jmp 0x443546
mov dword [esp + 0xc], edx
mov dword [esp + 8], 6
mov dword [esp + 4], 0x73bb36
mov dword [esp], 0x73bb4c
call fcn.006e55d0
jmp 0x443590
mov dword [esp], 0x73b8ec
call fcn.006e4530
mov dword [esp + 0xc], edx
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0x73bb36
mov dword [esp], 0x73bb4c
call fcn.006e55d0
lea esi, [esi]