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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
push 0x28
call fcn.004b7848
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 8
call fcn.004b7848
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
pop ebx
add ebx, 4
push ebx
push 8
call fcn.004b7848
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
pop ebx
add ebx, 4
push ebx
push 8
call fcn.004b7848
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
pop ebx
add ebx, 0x14
push ebx
push 0x210
call fcn.004b7848
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5d43c8
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 0x82
rep stosd dword es:[edi], eax
add ebx, 4
push ebx
push 0x24
call fcn.004b7848
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5d43d0
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
xor eax, eax
mov ecx, 7
rep stosd dword es:[edi], eax
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push dword [ebp + 8]
call fcn.00402da0
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40e6fe
push ebx
call fcn.004b784e
add esp, 4
pop eax
mov dword [ebp - 4], eax
push 0x80000301
push 0
push 2
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 4]
test eax, eax
jne 0x40e721
mov eax, 0x5d3c00
push eax
push 2
mov ebx, 0x4b9790
call fcn.004b7854
add esp, 0x1c
mov dword [ebp - 0x20], eax
mov eax, 0x5d4394
xor ecx, ecx
test eax, eax
je 0x40e745
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x20]
xor ebx, ebx
test eax, eax
je 0x40e756
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40e76d
dec eax
test ecx, ecx
je 0x40e76d
call fcn.00406e1c
add esp, 0xc
test eax, eax
mov eax, 0
setne al
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40e78d
push ebx
call fcn.004b784e
add esp, 4
cmp dword [ebp - 0x24], 0
je 0x40e7c7
push 0x5d4394
push dword [ebp - 4]
mov ecx, 2
call fcn.0040205c
add esp, 8
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40e7c3
push ebx
call fcn.004b784e
add esp, 4
pop eax
mov dword [ebp - 4], eax
cmp dword [ebp + 0x24], 0
jne 0x40e822
mov ebx, dword [ebp + 0x14]
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40e7f1
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40e7ed
imul eax, dword [ebx]
jmp 0x40e7e2
mov ecx, eax
test ecx, ecx
je 0x40e810
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40e809
push ebx
push eax
call fcn.004b784e
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40e7f7
call fcn.004b784e
add esp, 4
mov eax, 0x5d3c00
mov ebx, dword [ebp + 0x14]
mov dword [ebx], eax
mov eax, 0x5d3c00
xor ecx, ecx
test eax, eax
je 0x40e830
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x40e843
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40e85a
dec eax
test ecx, ecx
je 0x40e85a
call fcn.00406e1c
add esp, 0xc
test eax, eax
je 0x40e8ac
mov eax, 0x5d3c08
xor ecx, ecx
test eax, eax
je 0x40e873
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x40e886
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40e89d
dec eax
test ecx, ecx
je 0x40e89d
call fcn.00406e1c
add esp, 0xc
test eax, eax
je 0x40e8ac
xor eax, eax
jmp 0x40e8b1
mov eax, 1
test eax, eax
je 0x40eb24
push 0x5d43a0
push dword [ebp - 4]
mov ecx, 2
call fcn.0040205c
add esp, 8
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], esp
mov eax, dword [ebp - 0xc]
push eax
push 0x250
call fcn.004b7848
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x208
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x1c
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x40e9a8
add eax, 8
push eax
call sub.KERNEL32.DLL_FindFirstFileW
cmp dword [ebp - 0x24], esp
je 0x40e9ca
push 0x1c5
push 0x4170f4f
push 6
call fcn.004b785a
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x28]
push ebx
mov edi, dword [ebp - 0x2c]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004b7842
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40ea9c
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40ea9a
imul eax, dword [edi]
jmp 0x40ea8f
mov ecx, eax
cmp ecx, 0x208
jle 0x40eaa9
mov ecx, 0x208
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x208
push ebx
push edi
push 1
mov eax, 2
call fcn.004b7842
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40eae7
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40eae5
imul eax, dword [edi]
jmp 0x40eada
mov ecx, eax
cmp ecx, 0x1c
jle 0x40eaf1
mov ecx, 0x1c
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x1c
call fcn.004b784e
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40eb19
push ebx
call fcn.004b784e
add esp, 4
mov eax, dword [ebp - 0x30]
mov dword [ebp - 8], eax
jmp 0x40ed8a
mov ebx, dword [ebp + 0xc]
push dword [ebx]
push dword [ebp - 4]
mov ecx, 2
call fcn.0040205c
add esp, 8
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], esp
mov eax, dword [ebp - 0xc]
push eax
push 0x250
call fcn.004b7848
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x208
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x1c
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x40ec13
add eax, 8
push eax
call sub.KERNEL32.DLL_FindFirstFileW
cmp dword [ebp - 0x24], esp
je 0x40ec35
push 0x23a
push 0x4170f4f
push 6
call fcn.004b785a
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x28]
push ebx
mov edi, dword [ebp - 0x2c]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004b7842
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40ed07
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40ed05
imul eax, dword [edi]
jmp 0x40ecfa
mov ecx, eax
cmp ecx, 0x208
jle 0x40ed14
mov ecx, 0x208
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x208
push ebx
push edi
push 1
mov eax, 2
call fcn.004b7842
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40ed52
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40ed50
imul eax, dword [edi]
jmp 0x40ed45
mov ecx, eax
cmp ecx, 0x1c
jle 0x40ed5c
mov ecx, 0x1c
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x1c
call fcn.004b784e
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40ed84
push ebx
call fcn.004b784e
add esp, 4
mov eax, dword [ebp - 0x30]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
je 0x40f35e
cmp dword [ebp + 0x2c], 0
jne 0x40ede2
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x24], ebx
push 0x80000301
push 0
push 0x10
push 0x80000301
push 0
mov ebx, dword [ebp - 0x24]
push dword [ebx]
push 2
mov ebx, 0x4b7d00
call fcn.004b7854
add esp, 0x1c
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
je 0x40ede2
mov eax, 1
jmp 0x40ede7
mov eax, 0
test eax, eax
jne 0x40ee4e
cmp dword [ebp + 0x2c], 0
je 0x40ee3d
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x38], ebx
push 0x80000301
push 0
push 0x10
push 0x80000301
push 0
mov ebx, dword [ebp - 0x38]
push dword [ebx]
push 2
mov ebx, 0x4b7d00
call fcn.004b7854
add esp, 0x1c
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x40ee3d
mov eax, 1
jmp 0x40ee42
mov eax, 0
test eax, eax
jne 0x40ee4e
xor eax, eax
jmp 0x40ee53
mov eax, 1
test eax, eax
je 0x40ee60
jmp 0x40f102
mov ebx, dword [ebp - 0xc]
add ebx, 0x20
mov dword [ebp - 0x20], ebx
push dword [ebp - 0x20]
call fcn.00406f98
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x40ee83
jmp 0x40f102
mov dword [ebp - 0x20], esp
push dword [ebp - 0x10]
call sub.KERNEL32.DLL_lstrlenW
cmp dword [ebp - 0x20], esp
je 0x40eeaa
push 0x459
push 0x4170f4f
push 6
call fcn.004b785a
add esp, 0xc
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x40eebc
jmp 0x40f102
fild dword [ebp - 0x14]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fmul qword [0x5d3bf8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fadd qword [0x5d3bf8]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
call fcn.004020b4
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push dword [ebp - 0x10]
push 2
mov ebx, 0x4bc1c0
call fcn.004b7854
add esp, 0x1c
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40ef1d
push ebx
call fcn.004b784e
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
mov eax, 0x5d43ac
xor ecx, ecx
test eax, eax
je 0x40ef2f
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x18]
xor ebx, ebx
test eax, eax
je 0x40ef40
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40ef57
dec eax
test ecx, ecx
je 0x40ef57
call fcn.00406e1c
add esp, 0xc
test eax, eax
je 0x40efa7
mov eax, 0x5d43b8
xor ecx, ecx
test eax, eax
je 0x40ef70
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x18]
xor ebx, ebx
test eax, eax
je 0x40ef81
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40ef98
dec eax
test ecx, ecx
je 0x40ef98
call fcn.00406e1c
add esp, 0xc
test eax, eax
je 0x40efa7
xor eax, eax
jmp 0x40efac
mov eax, 1
test eax, eax
je 0x40efb9
jmp 0x40f102
cmp dword [ebp + 0x1c], 0
je 0x40f078
push dword [ebp - 0x18]
push dword [ebp - 4]
mov ecx, 2
call fcn.0040205c
add esp, 8
mov dword [ebp - 0x20], eax
push dword [ebp + 0x14]
push 4
mov eax, 2
call fcn.004b7842
add esp, 8
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp + 0x14]
mov ebx, dword [ebx]
mov dword [ebp - 0x28], ebx
call fcn.00403718
mov dword [ebp - 0x2c], ecx
mov edi, dword [ebp - 0x28]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40f01d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x2c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x28]
call fcn.004b7866
add esp, 8
mov ebx, dword [ebp + 0x14]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x2c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x24]
push edi
test eax, eax
je 0x40f060
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004b7848
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40f073
push ebx
call fcn.004b784e
add esp, 4
jmp 0x40f102
push dword [ebp + 0x14]
push 4
mov eax, 2
call fcn.004b7842
add esp, 8
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp + 0x14]
mov ebx, dword [ebx]
mov dword [ebp - 0x24], ebx
call fcn.00403718
mov dword [ebp - 0x28], ecx
mov edi, dword [ebp - 0x24]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40f0bc
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x28]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x24]
call fcn.004b7866
add esp, 8
mov ebx, dword [ebp + 0x14]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x28]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x20]
push edi
test eax, eax
je 0x40f0ff
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004b7848
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
mov dword [ebp - 0x20], esp
mov eax, dword [ebp - 0xc]
push eax
push 0x250
call fcn.004b7848
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x208
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x1c
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push dword [ebp - 8]
call sub.KERNEL32.DLL_FindNextFileW
cmp dword [ebp - 0x20], esp
je 0x40f1f3
push 0x69e
push 0x4170f4f
push 6
call fcn.004b785a
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x24]
push ebx
mov edi, dword [ebp - 0x28]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004b7842
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40f2c5
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40f2c3
imul eax, dword [edi]
jmp 0x40f2b8
mov ecx, eax
cmp ecx, 0x208
jle 0x40f2d2
mov ecx, 0x208
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x208
push ebx
push edi
push 1
mov eax, 2
call fcn.004b7842
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40f310
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40f30e
imul eax, dword [edi]
jmp 0x40f303
mov ecx, eax
cmp ecx, 0x1c
jle 0x40f31a
mov ecx, 0x1c
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x1c
call fcn.004b784e
add esp, 4
pop eax
test eax, eax
jne 0x40ed94
mov dword [ebp - 0x20], esp
push dword [ebp - 8]
call sub.KERNEL32.DLL_FindClose
cmp dword [ebp - 0x20], esp
je 0x40f35e
push 0x6c0
push 0x4170f4f
push 6
call fcn.004b785a
add esp, 0xc
cmp dword [ebp + 0x24], 0
je 0x40fa12
push 0x5d43a0
push dword [ebp - 4]
mov ecx, 2
call fcn.0040205c
add esp, 8
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], esp
mov eax, dword [ebp - 0xc]
push eax
push 0x250
call fcn.004b7848
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x28], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x208
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x1c
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x40f457
add eax, 8
push eax
call sub.KERNEL32.DLL_FindFirstFileW
cmp dword [ebp - 0x24], esp
je 0x40f479
push 0x721
push 0x4170f4f
push 6
call fcn.004b785a
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x28]
push ebx
mov edi, dword [ebp - 0x2c]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004b7842
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40f54b
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40f549
imul eax, dword [edi]
jmp 0x40f53e
mov ecx, eax
cmp ecx, 0x208
jle 0x40f558
mov ecx, 0x208
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x208
push ebx
push edi
push 1
mov eax, 2
call fcn.004b7842
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40f596
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40f594
imul eax, dword [edi]
jmp 0x40f589
mov ecx, eax
cmp ecx, 0x1c
jle 0x40f5a0
mov ecx, 0x1c
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x1c
call fcn.004b784e
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40f5c8
push ebx
call fcn.004b784e
add esp, 4
mov eax, dword [ebp - 0x30]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
je 0x40fa12
mov ebx, dword [ebp - 0xc]
add ebx, 0x20
mov dword [ebp - 0x20], ebx
push dword [ebp - 0x20]
call fcn.00406f98
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x40f5fb
jmp 0x40f7b6
mov dword [ebp - 0x20], esp
push dword [ebp - 0x10]
call sub.KERNEL32.DLL_lstrlenW
cmp dword [ebp - 0x20], esp
je 0x40f622
push 0x850
push 0x4170f4f
push 6
call fcn.004b785a
add esp, 0xc
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x40f634
jmp 0x40f7b6
fild dword [ebp - 0x14]
fstp qword [ebp - 0x24]
fld qword [ebp - 0x24]
fmul qword [0x5d3bf8]
fstp qword [ebp - 0x2c]
fld qword [ebp - 0x2c]
fadd qword [0x5d3bf8]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
call fcn.004020b4
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push dword [ebp - 0x10]
push 2
mov ebx, 0x4bc1c0
call fcn.004b7854
add esp, 0x1c
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40f695
push ebx
call fcn.004b784e
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
mov eax, 0x5d43ac
xor ecx, ecx
test eax, eax
je 0x40f6a7
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x18]
xor ebx, ebx
test eax, eax
je 0x40f6b8
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40f6cf
dec eax
test ecx, ecx
je 0x40f6cf
call fcn.00406e1c
add esp, 0xc
test eax, eax
je 0x40f71f
mov eax, 0x5d43b8
xor ecx, ecx
test eax, eax
je 0x40f6e8
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 0x18]
xor ebx, ebx
test eax, eax
je 0x40f6f9
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40f710
dec eax
test ecx, ecx
je 0x40f710
call fcn.00406e1c
add esp, 0xc
test eax, eax
je 0x40f71f
xor eax, eax
jmp 0x40f724
mov eax, 1
test eax, eax
je 0x40f731
jmp 0x40f7b6
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x20], ebx
push 0x80000301
push 0
push 0x10
push 0x80000301
push 0
mov ebx, dword [ebp - 0x20]
push dword [ebx]
push 2
mov ebx, 0x4b7d00
call fcn.004b7854
add esp, 0x1c
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
je 0x40f7b6
push dword [ebp - 0x18]
push dword [ebp - 4]
mov ecx, 2
call fcn.0040205c
add esp, 8
mov dword [ebp - 0x20], eax
push 1
push dword [ebp + 0x2c]
push 1
push dword [ebp + 0x24]
push 1
push dword [ebp + 0x1c]
push 1
push dword [ebp + 0x14]
push 1
push dword [ebp + 0xc]
lea eax, [ebp - 0x20]
push eax
call fcn.0040e5c4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x40f7b6
push ebx
call fcn.004b784e
add esp, 4
mov dword [ebp - 0x20], esp
mov eax, dword [ebp - 0xc]
push eax
push 0x250
call fcn.004b7848
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x24], eax
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x208
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
add ebx, 8
mov ecx, 0x1c
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop ebx
add ebx, 4
push dword [ebp - 8]
call sub.KERNEL32.DLL_FindNextFileW
cmp dword [ebp - 0x20], esp
je 0x40f8a7
push 0xacc
push 0x4170f4f
push 6
call fcn.004b785a
add esp, 0xc
push eax
mov ebx, dword [ebp - 0x24]
push ebx
mov edi, dword [ebp - 0x28]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 8
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push ebx
push edi
push 1
mov eax, 2
call fcn.004b7842
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40f979
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40f977
imul eax, dword [edi]
jmp 0x40f96c
mov ecx, eax
cmp ecx, 0x208
jle 0x40f986
mov ecx, 0x208
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x208
push ebx
push edi
push 1
mov eax, 2
call fcn.004b7842
add esp, 4
pop edi
pop ebx
push ebx
push edi
mov edi, dword [edi]
mov ecx, dword [edi]
add edi, 4
test ecx, ecx
je 0x40f9c4
mov eax, dword [edi]
add edi, 4
dec ecx
je 0x40f9c2
imul eax, dword [edi]
jmp 0x40f9b7
mov ecx, eax
cmp ecx, 0x1c
jle 0x40f9ce
mov ecx, 0x1c
mov esi, ebx
rep movsb byte es:[edi], byte [esi]
pop edi
pop ebx
add edi, 4
add ebx, 0x1c
call fcn.004b784e
add esp, 4
pop eax
test eax, eax
jne 0x40f5d8
mov dword [ebp - 0x20], esp
push dword [ebp - 8]
call sub.KERNEL32.DLL_FindClose
cmp dword [ebp - 0x20], esp
je 0x40fa12
push 0xaee
push 0x4170f4f
push 6
call fcn.004b785a
add esp, 0xc
mov ebx, dword [ebp + 0x14]
mov ebx, dword [ebx]
call fcn.00406fc4
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
jmp 0x40fa27
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x40fa38
push ebx
call fcn.004b784e
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004b784e
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004b784e
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004b784e
add esp, 4
pop ebx
add ebx, 0x14
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004b784e
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.004b784e
add esp, 4
pop ebx
call fcn.004b784e
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40faa4
push ebx
call fcn.004b784e
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x2c