Function at 0x1005516
Capabilities:
Check if file exists
Enumerate gui resources
Print debug messages

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x430
mov eax, dword [0x1007194]
push ebx
push edi
push 2
xor edi, edi
cmp dword [ebp + 0xc], edi
pop ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x42c], ebx
mov dword [ebp - 0x41c], edi
jne 0x100555e
cmp dword [ebp + 0x10], ebx
jl 0x100555e
mov ecx, dword [eax]
cmp word [ecx], di
je 0x100555e
mov eax, dword [eax + 4]
cmp word [eax], di
mov dword [ebp - 0x430], eax
jne 0x1005566
push 3
pop eax
jmp 0x100575e
push esi
push edi
lea eax, [ebp - 0x414]
push eax
mov esi, 0x104
push esi
push ecx
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
cmp eax, esi
jae 0x100575b
cmp eax, edi
je 0x100575b
lea eax, [ebp - 0x414]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x100575b
mov word [ebp - 0x20c], di
xor eax, eax
mov ecx, 0x81
lea edi, [ebp - 0x20a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov esi, eax
push esi
call fcn.010053e9
push esi
mov esi, dword [sym.imp.msvcrt.dll_swprintf]
mov dword [ebp - 0x418], eax
lea eax, [ebp - 0x20c]
push 0x1001618
push eax
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
add esp, 0xc
lea eax, [ebp - 0x20c]
push eax
call ebx
push dword [ebp - 0x418]
xor eax, eax
mov ecx, 0x82
lea edi, [ebp - 0x20c]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x20c]
push 0x10015e8
push eax
call esi
add esp, 0xc
lea eax, [ebp - 0x20c]
push eax
call ebx
and dword [ebp - 0x424], 0
xor eax, eax
and dword [ebp - 0x428], eax
lea edi, [ebp - 0x420]
stosd dword es:[edi], eax
mov edi, dword [ebp - 0x418]
cmp edi, 0xffffffff
je 0x100566e
and dword [ebp - 0x420], 0
lea eax, [ebp - 0x424]
push eax
push 0x100546d
mov dword [ebp - 0x424], edi
call dword [sym.imp.USER32.dll_EnumWindows]
mov eax, dword [ebp - 0x420]
test eax, eax
jne 0x10056b4
push edi
call fcn.010053e9
mov dword [ebp - 0x418], eax
push dword [ebp - 0x418]
xor eax, eax
mov ecx, 0x82
lea edi, [ebp - 0x20c]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x20c]
push 0x10015e8
push eax
call esi
add esp, 0xc
lea eax, [ebp - 0x20c]
push eax
call ebx
cmp dword [ebp - 0x418], 0xffffffff
jne 0x100563a
jmp 0x10056ba
mov dword [ebp - 0x428], eax
push 0x10015d0
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
test edi, edi
je 0x1005753
push 0x10015ac
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x100574c
lea eax, [ebp - 0x414]
push eax
push dword [ebp - 0x430]
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
push 0xeeae
push eax
call fcn.01001785
add esp, 0x10
lea eax, [ebp - 0x41c]
push eax
push 1
lea eax, [ebp - 0x414]
push eax
push dword [ebp - 0x430]
push dword [ebp - 0x428]
call esi
test eax, eax
je 0x100574c
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
push 0xeeb2
push eax
call fcn.01001785
xor eax, eax
cmp dword [ebp - 0x41c], eax
pop ecx
setne al
pop ecx
mov dword [ebp - 0x42c], eax
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [ebp - 0x42c]
jmp 0x100575d
mov eax, ebx
pop esi
mov ecx, dword [ebp - 4]
pop edi
pop ebx
call fcn.01005aa6
leave
ret 0x10