Function at 0x10007750
Capabilities:
Check if file exists
Create process on windows
Enumerate files on windows
Get file attributes
Query environment variable

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xadc
push ebx
push esi
push edi
push 0x104
lea eax, [esp + 0x8c]
mov dword [esp + 0x14], 0
push eax
push dword [0x10016744]
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
test eax, eax
je 0x100079f5
lea eax, [esp + 0x88]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
push dword [0x10016814]
mov esi, eax
lea eax, [esp + 0x8c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
lea eax, [esp + 0x290]
push eax
lea eax, [esp + 0x8c]
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [esp + 0x18], eax
cmp eax, 0xffffffff
je 0x100079f5
mov edi, dword [ebp + 8]
lea ecx, [esp + 0x88]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcatA]
lea ecx, [ecx + esi*2]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatW]
mov dword [esp + 0x14], ecx
nop dword [eax]
xor eax, eax
mov word [ecx], ax
lea eax, [esp + 0x2bc]
push eax
lea eax, [esp + 0x8c]
push eax
call esi
lea eax, [esp + 0x88]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x10007825
test al, 0x10
jne 0x10007825
mov eax, 1
jmp 0x10007827
xor eax, eax
test eax, eax
je 0x100079b4
push dword [0x10016924]
lea eax, [esp + 0x4e4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
lea eax, [esp + 0x88]
push eax
lea eax, [esp + 0x4e4]
push eax
call esi
push dword [0x10016928]
lea eax, [esp + 0x4e4]
push eax
call esi
push dword [0x10016818]
lea eax, [esp + 0x4e4]
push eax
call esi
xor eax, eax
mov word [esp + 0x6e8], ax
lea eax, [esp + 0x4e0]
push eax
lea eax, [esp + 0x6ec]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
push 0x44
lea eax, [esp + 0x44]
push 0
push eax
call fcn.100010d0
add esp, 0xc
mov dword [esp + 0x40], 0x44
xor eax, eax
mov dword [esp + 0x6c], 1
mov word [esp + 0x70], ax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x44]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [esp + 0x708]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x100079b4
mov eax, dword [esp + 0x20]
test eax, eax
je 0x100078fa
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x10007909
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test edi, edi
je 0x100079b4
cmp dword [esp + 0x10], 0
jne 0x1000792b
push dword [0x10016bd0]
push edi
call ebx
mov dword [esp + 0x10], 1
jmp 0x10007933
push 0x1000f408
push edi
call ebx
lea eax, [esp + 0x2bc]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x10007983
dec eax
test eax, eax
jle 0x10007967
nop word [eax + eax]
movzx ecx, word [esp + eax*2 + 0x2bc]
test cx, cx
je 0x10007967
cmp ecx, 0x2e
je 0x10007967
dec eax
test eax, eax
jg 0x10007950
cmp word [esp + eax*2 + 0x2bc], 0x2e
jne 0x1000797c
xor ecx, ecx
mov word [esp + eax*2 + 0x2bc], cx
lea eax, [esp + 0x2bc]
mov esi, 0x14
lea ecx, [esp + 0x2c]
nop dword [eax]
movzx edx, word [eax]
test dx, dx
je 0x100079a3
mov byte [ecx], dl
add eax, 2
inc ecx
sub esi, 1
jne 0x10007990
lea eax, [esp + 0x2c]
mov byte [ecx], 0
push eax
push edi
call ebx
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatW]
mov eax, dword [esp + 0x14]
xor ecx, ecx
push dword [0x10016814]
mov word [eax], cx
lea eax, [esp + 0x8c]
push eax
call esi
lea eax, [esp + 0x290]
push eax
push dword [esp + 0x1c]
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
mov ecx, dword [esp + 0x14]
test eax, eax
jne 0x100077f0
push dword [esp + 0x18]
call dword [sym.imp.KERNEL32.dll_FindClose]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4