Function at 0x416d90
Capabilities:
Enumerate files on windows

Disassembly:
push 0xffffffffffffffff
push 0x51e6ed
mov eax, dword fs:[0]
push eax
sub esp, 0x714
mov eax, dword [0x56a338]
xor eax, esp
mov dword [esp + 0x710], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x56a338]
xor eax, esp
push eax
lea eax, [esp + 0x728]
mov dword fs:[0], eax
xor ebx, ebx
mov edi, edx
mov ebp, 7
mov eax, ecx
mov dword [esp + 0x14], edi
mov dword [esp + 0xc0], ebp
mov dword [esp + 0xbc], ebx
mov word [esp + 0xac], bx
lea esi, [eax + 2]
mov dx, word [eax]
add eax, 2
cmp dx, bx
jne 0x416df3
sub eax, esi
sar eax, 1
push eax
push ecx
lea esi, [esp + 0xb0]
call fcn.004021f0
mov dword [esp + 0x730], ebx
mov eax, edi
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x68], ebx
mov word [esp + 0x58], bx
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x416e30
sub eax, edx
sar eax, 1
push eax
mov eax, dword [esp + 0x18]
push eax
lea esi, [esp + 0x5c]
call fcn.004021f0
lea ecx, [esp + 0x70]
push ecx
mov ecx, esi
mov byte [esp + 0x734], 1
call fcn.0040d2f0
add esp, 4
lea edi, [esp + 0x70]
mov byte [esp + 0x730], 2
call fcn.0040d450
mov edx, edi
push edx
lea ecx, [esp + 0x90]
call fcn.0040d240
add esp, 4
push 0xffffffffffffffff
push ebx
mov ecx, esi
mov byte [esp + 0x738], 3
call fcn.004020b0
mov ebp, 8
mov byte [esp + 0x730], 2
cmp dword [esp + 0xa4], ebp
jb 0x416ec0
mov eax, dword [esp + 0x90]
push eax
call fcn.0042eca7
add esp, 4
push 3
push 0x5614b0
lea ecx, [esp + 0xb0]
call fcn.00401d70
cmp dword [esp + 0xc0], ebp
mov eax, dword [esp + 0xac]
jae 0x416eea
lea eax, [esp + 0xac]
lea ecx, [esp + 0xc4]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp eax, 0xffffffff
mov dword [esp + 0x18], eax
je 0x41741e
jmp 0x416f10
mov eax, dword [esp + 0x18]
lea edx, [esp + 0xc4]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
cmp eax, ebx
je 0x41741e
lea eax, [esp + 0xf0]
mov dword [esp + 0x50], 7
mov dword [esp + 0x4c], ebx
mov word [esp + 0x3c], bx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x416f46
sub eax, edx
sar eax, 1
push eax
lea ecx, [esp + 0xf4]
push ecx
lea esi, [esp + 0x40]
call fcn.004021f0
lea edx, [esp + 0x1c]
push edx
mov ecx, esi
mov byte [esp + 0x734], 4
call fcn.0040d2f0
add esp, 4
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x7c]
mov byte [esp + 0x73c], 5
call fcn.004054a0
mov byte [esp + 0x730], 4
cmp dword [esp + 0x34], 0x10
jb 0x416faf
mov eax, dword [esp + 0x20]
push eax
call fcn.0042eca7
add esp, 4
lea edi, [esp + 0x70]
call fcn.0040d450
mov ecx, edi
push ecx
lea ecx, [esp + 0x20]
call fcn.0040d240
add esp, 4
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x40]
mov byte [esp + 0x738], 6
call fcn.004020b0
mov byte [esp + 0x730], 4
cmp dword [esp + 0x34], ebp
jb 0x416ff6
mov edx, dword [esp + 0x20]
push edx
call fcn.0042eca7
add esp, 4
cmp word [esp + 0xf0], 0x2e
jne 0x417025
mov byte [esp + 0x730], 2
cmp dword [esp + 0x50], ebp
jb 0x416f10
mov eax, dword [esp + 0x3c]
push eax
call fcn.0042eca7
add esp, 4
jmp 0x416f10
mov ax, word [esp + 0xf2]
cmp ax, bx
jne 0x417056
mov byte [esp + 0x730], 2
cmp dword [esp + 0x50], ebp
jb 0x416f10
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.0042eca7
add esp, 4
jmp 0x416f10
cmp ax, 0x2e
jne 0x41708a
cmp word [esp + 0xf4], bx
jne 0x41708a
mov byte [esp + 0x730], 2
cmp dword [esp + 0x50], ebp
jb 0x416f10
mov edx, dword [esp + 0x3c]
push edx
call fcn.0042eca7
add esp, 4
jmp 0x416f10
test byte [esp + 0xc4], 0x10
je 0x4170b8
mov byte [esp + 0x730], 2
cmp dword [esp + 0x50], ebp
jb 0x416f10
mov eax, dword [esp + 0x3c]
push eax
call fcn.0042eca7
add esp, 4
jmp 0x416f10
push 0x206
lea ecx, [esp + 0x522]
push ebx
push ecx
mov word [esp + 0x528], bx
call fcn.00435740
add esp, 0xc
push 0x206
lea edx, [esp + 0x31a]
push ebx
push edx
mov word [esp + 0x320], bx
call fcn.00435740
mov eax, dword [esp + 0x48]
add esp, 0xc
cmp dword [esp + 0x50], ebp
jae 0x417102
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x318]
push 0x5606ec
push eax
call fcn.0042ec11
add esp, 0xc
lea ecx, [esp + 0x314]
push 0x2e
push ecx
call fcn.0042eba4
add esp, 8
cmp eax, ebx
je 0x417162
mov ecx, eax
lea esi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x417133
sub ecx, esi
sar ecx, 1
cmp ecx, 0x104
jge 0x417162
lea edx, [esp + 0x51c]
sub edx, eax
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
cmp cx, bx
jne 0x417153
mov ecx, str..lnk
lea eax, [esp + 0x51c]
mov edi, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x417196
cmp dx, bx
je 0x417192
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x417196
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x417170
xor eax, eax
jmp 0x41719b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x4171c3
mov byte [esp + 0x730], 2
cmp dword [esp + 0x50], ebp
jb 0x416f10
mov edx, dword [esp + 0x3c]
push edx
call fcn.0042eca7
add esp, 4
jmp 0x416f10
lea eax, [esp + 0x8c]
push eax
lea ecx, [esp + 0x318]
call fcn.0040cfd0
mov ecx, dword [esp + 0x5c]
add esp, 4
cmp dword [esp + 0x6c], ebp
jae 0x4171e8
lea ecx, [esp + 0x58]
mov esi, dword [esp + 0xa4]
cmp esi, ebp
mov edi, dword [esp + 0x90]
mov eax, edi
jae 0x417203
lea eax, [esp + 0x90]
push ecx
push eax
call fcn.0040d1d0
add esp, 8
test eax, eax
jne 0x41725c
cmp esi, ebp
jb 0x41721e
push edi
call fcn.0042eca7
add esp, 4
mov byte [esp + 0x730], 2
cmp dword [esp + 0x50], ebp
mov dword [esp + 0xa4], 7
mov dword [esp + 0xa0], ebx
mov word [esp + 0x90], bx
jb 0x416f10
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.0042eca7
add esp, 4
jmp 0x416f10
cmp esi, ebp
mov ecx, edi
jae 0x417269
lea ecx, [esp + 0x90]
mov eax, dword [esp + 0x14]
lea ecx, [ecx]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x417296
cmp dx, bx
je 0x417292
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x417296
add eax, 4
add ecx, 4
cmp dx, bx
jne 0x417270
xor eax, eax
jmp 0x41729b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x417362
cmp esi, ebp
jb 0x4172b0
push edi
call fcn.0042eca7
add esp, 4
cmp dword [esp + 0x50], ebp
mov dword [esp + 0xa4], 7
mov dword [esp + 0xa0], ebx
mov word [esp + 0x90], bx
jb 0x4172dd
mov edx, dword [esp + 0x3c]
push edx
call fcn.0042eca7
add esp, 4
cmp dword [esp + 0x88], 0x10
mov dword [esp + 0x50], 7
mov dword [esp + 0x4c], ebx
mov word [esp + 0x3c], bx
jb 0x417305
mov eax, dword [esp + 0x74]
push eax
call fcn.0042eca7
add esp, 4
cmp dword [esp + 0x6c], ebp
mov dword [esp + 0x88], 0xf
mov dword [esp + 0x84], ebx
mov byte [esp + 0x74], bl
jb 0x41732e
mov ecx, dword [esp + 0x58]
push ecx
call fcn.0042eca7
add esp, 4
cmp dword [esp + 0xc0], ebp
mov dword [esp + 0x6c], 7
mov dword [esp + 0x68], ebx
mov word [esp + 0x58], bx
jb 0x417358
mov edx, dword [esp + 0xac]
push edx
call fcn.0042eca7
add esp, 4
mov eax, 2
jmp 0x41748a
cmp esi, ebp
jb 0x41736f
push edi
call fcn.0042eca7
add esp, 4
cmp dword [esp + 0x50], ebp
mov dword [esp + 0xa4], 7
mov dword [esp + 0xa0], ebx
mov word [esp + 0x90], bx
jb 0x41739c
mov eax, dword [esp + 0x3c]
push eax
call fcn.0042eca7
add esp, 4
cmp dword [esp + 0x88], 0x10
mov dword [esp + 0x50], 7
mov dword [esp + 0x4c], ebx
mov word [esp + 0x3c], bx
jb 0x4173c4
mov ecx, dword [esp + 0x74]
push ecx
call fcn.0042eca7
add esp, 4
cmp dword [esp + 0x6c], ebp
mov dword [esp + 0x88], 0xf
mov dword [esp + 0x84], ebx
mov byte [esp + 0x74], bl
jb 0x4173ed
mov edx, dword [esp + 0x58]
push edx
call fcn.0042eca7
add esp, 4
cmp dword [esp + 0xc0], ebp
mov dword [esp + 0x6c], 7
mov dword [esp + 0x68], ebx
mov word [esp + 0x58], bx
jb 0x417417
mov eax, dword [esp + 0xac]
push eax
call fcn.0042eca7
add esp, 4
mov eax, 1
jmp 0x41748a
cmp dword [esp + 0x88], 0x10
jb 0x417435
mov ecx, dword [esp + 0x74]
push ecx
call fcn.0042eca7
add esp, 4
cmp dword [esp + 0x6c], ebp
mov dword [esp + 0x88], 0xf
mov dword [esp + 0x84], ebx
mov byte [esp + 0x74], bl
jb 0x41745e
mov edx, dword [esp + 0x58]
push edx
call fcn.0042eca7
add esp, 4
cmp dword [esp + 0xc0], ebp
mov dword [esp + 0x6c], 7
mov dword [esp + 0x68], ebx
mov word [esp + 0x58], bx
jb 0x417488
mov eax, dword [esp + 0xac]
push eax
call fcn.0042eca7
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x728]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x710]
xor ecx, esp
call fcn.0042eb95
add esp, 0x720
ret