Function at 0x536b610
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x53ed90d
mov eax, dword fs:[0]
push eax
sub esp, 0x6a4
mov eax, dword [0x54183c4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
xor edi, edi
mov dword [ebp - 0x5c4], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x5c8], eax
mov dword [ebp - 0x5b4], edi
mov dword [ebp - 0x60c], edi
mov dword [ebp - 0x608], edi
mov dword [ebp - 0x604], edi
push 0xffffffffffffffff
mov dword [ebp - 4], edi
xor ecx, ecx
push edi
mov word [ebp - 0x48], cx
mov ebx, 7
push eax
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x38], edi
call fcn.052e53b0
mov byte [ebp - 4], 1
cmp dword [ebp - 0x34], 8
mov eax, dword [ebp - 0x48]
jae 0x536b69a
lea eax, [ebp - 0x48]
mov edx, dword [ebp - 0x38]
cmp word [eax + edx*2 - 2], 0x5c
je 0x536b6b4
push 1
mov eax, 0x5402540
lea esi, [ebp - 0x48]
call fcn.052ec780
push 1
mov eax, 0x5402b28
lea esi, [ebp - 0x48]
call fcn.052ec780
mov ecx, 0x250
lea eax, [ebp - 0x5b0]
mov edi, edi
mov byte [eax], 0
inc eax
dec ecx
jne 0x536b6d0
cmp dword [ebp - 0x34], 8
mov eax, dword [ebp - 0x48]
jae 0x536b6e3
lea eax, [ebp - 0x48]
lea ecx, [ebp - 0x5b0]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x5e4], eax
cmp eax, 0xffffffff
jne 0x536b7c8
lea edx, [ebp - 0x6b0]
push edx
call fcn.052e1430
push 0xffffffffffffffff
lea eax, [ebp - 0x6b0]
mov bl, 2
push eax
mov byte [ebp - 4], bl
call fcn.052ed7c0
mov eax, dword [0x5419944]
cmp eax, 0x5419944
je 0x536b777
test byte [eax + 0x1c], 1
je 0x536b777
cmp byte [eax + 0x19], bl
jb 0x536b777
lea ecx, [ebp - 0x1ec]
lea eax, [ebp - 0x6b0]
call fcn.052e1510
mov esi, 8
mov ebx, 1
cmp dword [eax + 0x14], esi
jb 0x536b758
mov eax, dword [eax]
push eax
mov eax, dword [0x5419944]
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0x10]
push 0x53f9718
push 0x13
push ecx
push edx
call fcn.052e1190
add esp, 0x14
jmp 0x536b782
mov bl, byte [ebp - 0x5b4]
mov esi, 8
test bl, 1
je 0x536b79e
cmp dword [ebp - 0x1d8], esi
jb 0x536b79e
mov eax, dword [ebp - 0x1ec]
push eax
call fcn.053504e7
add esp, 4
lea ecx, [ebp - 0x6b0]
mov byte [ebp - 4], 1
call fcn.052e1350
cmp dword [ebp - 0x34], esi
jb 0x536b7be
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.053504e7
add esp, 4
mov eax, 1
jmp 0x536c09d
push edi
xor edx, edx
push 0x54025b8
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x70], edi
mov word [ebp - 0x80], dx
call fcn.052e5800
mov byte [ebp - 4], 3
push edi
xor eax, eax
push 0x54025b8
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], ax
call fcn.052e5800
mov byte [ebp - 4], 4
xor ecx, ecx
push edi
mov word [ebp - 0x64], cx
push 0x54025b8
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x54], edi
call fcn.052e5800
mov byte [ebp - 4], 5
test byte [ebp - 0x5b0], 0x10
je 0x536bac1
xor edx, edx
lea eax, [ebp - 0x584]
mov word [ebp - 0x1d0], dx
mov dword [ebp - 0x1bc], 7
mov dword [ebp - 0x1c0], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x536b851
sub eax, edx
sar eax, 1
push eax
lea eax, [ebp - 0x584]
push eax
lea ecx, [ebp - 0x1d0]
call fcn.052e5800
lea ecx, [ebp - 0x1d0]
push ecx
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 6
call fcn.052e2230
mov esi, 8
mov byte [ebp - 4], 5
cmp dword [ebp - 0x1bc], esi
jb 0x536b8a6
mov edx, dword [ebp - 0x1d0]
push edx
call fcn.053504e7
add esp, 4
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x50], esi
jae 0x536b8b1
lea eax, [ebp - 0x64]
push 0x5402b2c
push eax
call fcn.05350b32
add esp, 8
test eax, eax
je 0x536bff6
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x50], esi
jae 0x536b8d2
lea eax, [ebp - 0x64]
push 0x5402b30
push eax
call fcn.05350b32
add esp, 8
test eax, eax
je 0x536bff6
push 0x40
mov dword [ebp - 0x5d4], edi
call fcn.053506ca
mov ebx, eax
add esp, 4
cmp ebx, edi
je 0x536c0c5
mov dword [ebx], ebx
mov dword [ebp - 0x5d8], ebx
mov dword [ebx + 4], ebx
mov ecx, dword [ebp - 0x5c8]
push 0xffffffffffffffff
push edi
mov byte [ebp - 4], 7
xor eax, eax
push ecx
mov esi, 7
lea ecx, [ebp - 0x17c]
mov dword [ebp - 0x168], esi
mov dword [ebp - 0x16c], edi
mov word [ebp - 0x17c], ax
call fcn.052e53b0
lea edx, [ebp - 0x17c]
push edx
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 8
call fcn.052e2230
mov byte [ebp - 4], 7
cmp dword [ebp - 0x168], 8
jb 0x536b96f
mov eax, dword [ebp - 0x17c]
push eax
call fcn.053504e7
add esp, 4
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x536b97b
lea eax, [ebp - 0x2c]
mov ecx, dword [ebp - 0x1c]
cmp word [eax + ecx*2 - 2], 0x5c
je 0x536b99a
push 1
mov eax, 0x5402540
lea esi, [ebp - 0x2c]
call fcn.052ec780
mov esi, 7
push 0xffffffffffffffff
push edi
lea edx, [ebp - 0x64]
push edx
lea ecx, [ebp - 0x2c]
call fcn.052eb8b0
push 8
xor eax, eax
push str.FullPath
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0xdc], esi
mov dword [ebp - 0xe0], edi
mov word [ebp - 0xf0], ax
call fcn.052e5800
push 0xffffffffffffffff
mov byte [ebp - 4], 9
xor ecx, ecx
push edi
lea edx, [ebp - 0x2c]
mov word [ebp - 0xd4], cx
push edx
lea ecx, [ebp - 0xd4]
mov dword [ebp - 0xc0], esi
mov dword [ebp - 0xc4], edi
call fcn.052e53b0
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0xa
mov ecx, dword [ebx + 4]
push eax
push ecx
push ebx
call fcn.052e8ca0
mov dword [ebx + 4], eax
mov ecx, dword [eax + 4]
mov ebx, 8
mov dword [ecx], eax
mov byte [ebp - 4], 7
mov dword [ebp - 0x5d4], 1
cmp dword [ebp - 0xc0], ebx
jb 0x536ba42
mov edx, dword [ebp - 0xd4]
push edx
call fcn.053504e7
add esp, 4
xor eax, eax
mov dword [ebp - 0xc0], esi
mov dword [ebp - 0xc4], edi
mov word [ebp - 0xd4], ax
cmp dword [ebp - 0xdc], ebx
jb 0x536ba6e
mov ecx, dword [ebp - 0xf0]
push ecx
call fcn.053504e7
add esp, 4
mov edi, dword [ebp - 0x5c4]
mov esi, dword [edi + 0x30]
mov eax, dword [esi + 4]
lea edx, [ebp - 0x5d8]
push edx
push eax
push esi
call fcn.052e70a0
mov ecx, dword [edi + 0x34]
mov edx, 0x15555554
sub edx, ecx
cmp edx, 1
jb 0x536c0bb
inc ecx
mov dword [edi + 0x34], ecx
mov dword [esi + 4], eax
mov ecx, dword [eax + 4]
lea ebx, [ebp - 0x5d8]
mov dword [ecx], eax
mov byte [ebp - 4], 5
call fcn.052e5ce0
mov eax, dword [ebp - 0x5d8]
jmp 0x536bfeb
push 0x40
mov dword [ebp - 0x5bc], edi
call fcn.053506ca
mov ebx, eax
add esp, 4
cmp ebx, edi
je 0x536c0f8
mov dword [ebx], ebx
mov dword [ebp - 0x5c0], ebx
mov dword [ebx + 4], ebx
mov byte [ebp - 4], 0xb
mov esi, 7
xor ecx, ecx
lea eax, [ebp - 0x584]
mov dword [ebp - 0x1a0], esi
mov dword [ebp - 0x1a4], edi
mov word [ebp - 0x1b4], cx
lea edx, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
cmp cx, di
jne 0x536bb10
sub eax, edx
sar eax, 1
push eax
lea edx, [ebp - 0x584]
push edx
lea ecx, [ebp - 0x1b4]
call fcn.052e5800
lea eax, [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0xc
call fcn.052e2230
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x1a0], 8
jb 0x536bb61
mov ecx, dword [ebp - 0x1b4]
push ecx
call fcn.053504e7
add esp, 4
mov eax, dword [ebp - 0x5c8]
push 0xffffffffffffffff
push edi
xor edx, edx
push eax
lea ecx, [ebp - 0x198]
mov dword [ebp - 0x184], esi
mov dword [ebp - 0x188], edi
mov word [ebp - 0x198], dx
call fcn.052e53b0
lea ecx, [ebp - 0x198]
push ecx
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xd
call fcn.052e2230
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x184], 8
jb 0x536bbba
mov edx, dword [ebp - 0x198]
push edx
call fcn.053504e7
add esp, 4
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x536bbc6
lea eax, [ebp - 0x2c]
mov ecx, dword [ebp - 0x1c]
cmp word [eax + ecx*2 - 2], 0x5c
je 0x536bbe5
push 1
mov eax, 0x5402540
lea esi, [ebp - 0x2c]
call fcn.052ec780
mov esi, 7
push 0xffffffffffffffff
push edi
lea edx, [ebp - 0x80]
push edx
lea ecx, [ebp - 0x2c]
call fcn.052eb8b0
push 8
xor eax, eax
push str.FullPath
lea ecx, [ebp - 0x160]
mov dword [ebp - 0x14c], esi
mov dword [ebp - 0x150], edi
mov word [ebp - 0x160], ax
call fcn.052e5800
push 0xffffffffffffffff
mov byte [ebp - 4], 0xe
xor ecx, ecx
push edi
lea edx, [ebp - 0x2c]
mov word [ebp - 0x144], cx
push edx
lea ecx, [ebp - 0x144]
mov dword [ebp - 0x130], esi
mov dword [ebp - 0x134], edi
call fcn.052e53b0
lea eax, [ebp - 0x160]
mov byte [ebp - 4], 0xf
mov ecx, dword [ebx + 4]
push eax
push ecx
push ebx
call fcn.052e8ca0
mov dword [ebx + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0x130], 8
mov dword [ebp - 0x5bc], 1
jb 0x536bc89
mov edx, dword [ebp - 0x144]
push edx
call fcn.053504e7
add esp, 4
xor eax, eax
cmp dword [ebp - 0x14c], 8
mov dword [ebp - 0x130], esi
mov dword [ebp - 0x134], edi
mov word [ebp - 0x144], ax
jb 0x536bcb6
mov ecx, dword [ebp - 0x160]
push ecx
call fcn.053504e7
add esp, 4
push 4
xor edx, edx
push str.Name
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x114], esi
mov dword [ebp - 0x118], edi
mov word [ebp - 0x128], dx
call fcn.052e5800
push 0xffffffffffffffff
push edi
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x10
xor eax, eax
push ecx
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0xf8], esi
mov dword [ebp - 0xfc], edi
mov word [ebp - 0x10c], ax
call fcn.052e53b0
lea edx, [ebp - 0x128]
mov byte [ebp - 4], 0x11
mov eax, dword [ebx + 4]
push edx
push eax
push ebx
call fcn.052e8ca0
mov dword [ebx + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
mov byte [ebp - 4], 0xb
cmp dword [ebp - 0xf8], 8
mov dword [ebp - 0x5bc], 2
jb 0x536bd4b
mov ecx, dword [ebp - 0x10c]
push ecx
call fcn.053504e7
add esp, 4
xor edx, edx
cmp dword [ebp - 0x114], 8
mov dword [ebp - 0xf8], esi
mov dword [ebp - 0xfc], edi
mov word [ebp - 0x10c], dx
jb 0x536bd78
mov eax, dword [ebp - 0x128]
push eax
call fcn.053504e7
add esp, 4
mov ecx, dword [ebp - 0x590]
mov edx, dword [ebp - 0x594]
mov dword [ebp - 0x5f0], ecx
lea ecx, [ebp - 0x5f0]
lea eax, [ebp - 0x208]
mov dword [ebp - 0x5ec], edx
call fcn.052ee890
mov dword [ebp - 0x5b4], eax
mov byte [ebp - 4], 0x12
push 4
xor eax, eax
push str.Size
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0xa4], esi
mov dword [ebp - 0xa8], edi
mov word [ebp - 0xb8], ax
call fcn.052e5800
mov edx, dword [ebp - 0x5b4]
mov byte [ebp - 4], 0x13
xor ecx, ecx
mov word [ebp - 0x9c], cx
push edx
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], edi
call fcn.052e2230
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0x14
mov ecx, dword [ebx + 4]
push eax
push ecx
push ebx
call fcn.052e8ca0
mov dword [ebx + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
cmp dword [ebp - 0x88], 8
mov dword [ebp - 0x5bc], 3
jb 0x536be3c
mov edx, dword [ebp - 0x9c]
push edx
call fcn.053504e7
add esp, 4
xor eax, eax
cmp dword [ebp - 0xa4], 8
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], edi
mov word [ebp - 0x9c], ax
jb 0x536be69
mov ecx, dword [ebp - 0xb8]
push ecx
call fcn.053504e7
add esp, 4
xor edx, edx
cmp dword [ebp - 0x1f4], 8
mov dword [ebp - 0xa4], esi
mov dword [ebp - 0xa8], edi
mov word [ebp - 0xb8], dx
jb 0x536be96
mov eax, dword [ebp - 0x208]
push eax
call fcn.053504e7
add esp, 4
lea ecx, [ebp - 0x360]
call fcn.052ff297
mov byte [ebp - 4], 0x15
cmp dword [ebp - 0x18], 8
mov eax, dword [ebp - 0x2c]
jae 0x536beb1
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x360]
call fcn.052ff89b
lea ecx, [ebp - 0x360]
call fcn.052ff1ce
lea ecx, [ebp - 0x5dc]
push ecx
lea edx, [ebp - 0x25c]
push edx
mov edx, str.Version
mov dword [ebp - 0x5dc], eax
call fcn.052ef2a0
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x16
mov ecx, dword [ebx + 4]
push eax
push ecx
push ebx
call fcn.052e8ca0
mov dword [ebx + 4], eax
mov ecx, dword [eax + 4]
lea esi, [ebp - 0x25c]
mov dword [ebp - 0x5bc], 4
mov dword [ecx], eax
mov byte [ebp - 4], 0x15
call fcn.052e5e60
lea edx, [ebp - 0x224]
push edx
lea edi, [ebp - 0x5b0]
call fcn.05369e90
push eax
lea eax, [ebp - 0x294]
push eax
mov edx, str.Attributes
mov byte [ebp - 4], 0x17
call fcn.052ef350
lea ecx, [ebp - 0x294]
mov byte [ebp - 4], 0x18
mov edx, dword [ebx + 4]
push ecx
push edx
push ebx
call fcn.052e8ca0
mov dword [ebx + 4], eax
mov ecx, dword [eax + 4]
lea esi, [ebp - 0x294]
mov dword [ebp - 0x5bc], 5
mov dword [ecx], eax
call fcn.052e5e60
mov byte [ebp - 4], 0x15
cmp dword [ebp - 0x210], 8
jb 0x536bf92
mov eax, dword [ebp - 0x224]
push eax
call fcn.053504e7
add esp, 4
mov esi, dword [ebp - 0x5c4]
mov edi, dword [esi + 0x30]
mov edx, dword [edi + 4]
lea ecx, [ebp - 0x5c0]
push ecx
push edx
push edi
call fcn.052e70a0
mov ecx, dword [esi + 0x34]
mov edx, 0x15555554
sub edx, ecx
cmp edx, 1
jb 0x536c0bb
inc ecx
mov dword [esi + 0x34], ecx
mov dword [edi + 4], eax
mov ecx, dword [eax + 4]
mov dword [ecx], eax
lea ecx, [ebp - 0x360]
call fcn.052ff260
lea ebx, [ebp - 0x5c0]
mov byte [ebp - 4], 5
call fcn.052e5ce0
mov eax, dword [ebp - 0x5c0]
push eax
call fcn.053504e7
add esp, 4
xor edi, edi
mov edx, dword [ebp - 0x5e4]
lea ecx, [ebp - 0x5b0]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x536b822
mov ebx, 8
cmp dword [ebp - 0x50], ebx
jb 0x536c028
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.053504e7
add esp, 4
xor edx, edx
mov esi, 7
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x54], edi
mov word [ebp - 0x64], dx
cmp dword [ebp - 0x18], ebx
jb 0x536c04a
mov eax, dword [ebp - 0x2c]
push eax
call fcn.053504e7
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x2c], cx
cmp dword [ebp - 0x6c], ebx
jb 0x536c067
mov edx, dword [ebp - 0x80]
push edx
call fcn.053504e7
add esp, 4
xor eax, eax
mov dword [ebp - 0x6c], esi
mov dword [ebp - 0x70], edi
mov word [ebp - 0x80], ax
cmp dword [ebp - 0x34], ebx
jb 0x536c084
mov ecx, dword [ebp - 0x48]
push ecx
call fcn.053504e7
add esp, 4
xor edx, edx
lea ecx, [ebp - 0x60c]
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x38], edi
mov word [ebp - 0x48], dx
call fcn.052e6460
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0534fc81
mov esp, ebp
pop ebp
ret 8
push str.list_T__too_long
call fcn.05328b02
lea eax, [ebp - 0x5cc]
push eax
lea ecx, [ebp - 0x618]
mov dword [ebp - 0x5cc], edi
call fcn.0535058b
push 0x540efd0
lea ecx, [ebp - 0x618]
push ecx
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.05350eca
lea edx, [ebp - 0x5e0]
push edx
lea ecx, [ebp - 0x5fc]
mov dword [ebp - 0x5e0], edi
call fcn.0535058b
push 0x540efd0
lea eax, [ebp - 0x5fc]
push eax
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
call fcn.05350eca
int3