Function at 0x6304bc
Capabilities:
Enumerate gui resources
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffec
push ebx
push esi
push edi
mov byte [ebp - 0xd], dl
mov dword [ebp - 0xc], eax
mov byte [0x7b934c], 0
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0xc]
call fcn.00439538
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov dword [ebp - 8], eax
mov dl, 1
mov eax, dword [0x62e014]
call fcn.00404718
mov edx, dword [ebp - 0xc]
mov dword [edx + 0x10], eax
xor eax, eax
push ebp
push 0x630a2d
push dword fs:[eax]
mov dword fs:[eax], esp
call sub.winmm.dll_timeGetTime
mov edx, dword [ebp - 0xc]
mov dword [edx + 0x64], eax
call fcn.0062e6b4
mov eax, dword [ebp - 0xc]
mov edx, dword [eax + 0x70]
mov eax, dword [ebp - 0xc]
call fcn.0062f630
push 0
push 0x630a3c
call sub.user32.dll_FindWindowA
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x6305bf
mov dl, 1
mov eax, dword [0x62dfa4]
call fcn.0062eec0
mov ebx, eax
xor eax, eax
mov dword [ebx + 0x3c], eax
lea eax, [ebx + 0x1c]
push eax
mov eax, dword [ebp - 4]
push eax
call sub.user32.dll_GetWindowThreadProcessId
mov dword [ebx + 0x18], eax
mov eax, dword [ebp - 4]
mov dword [ebx + 0x20], eax
push 4
mov eax, dword [ebp - 4]
push eax
call sub.user32.dll_GetWindow
mov esi, eax
mov dword [ebx + 0x24], esi
test esi, esi
jne 0x630580
mov eax, dword [ebp - 4]
mov dword [ebx + 0x24], eax
mov eax, dword [ebp - 0xc]
movzx eax, byte [eax + 0x18]
mov byte [ebx + 0x14], al
lea eax, [ebx + 0x10]
mov edx, 0x630a48
call fcn.00405ef8
push 0xffffffffffffffde
mov eax, dword [ebp - 4]
push eax
call sub.user32.dll_GetClassLongA
mov dword [ebx + 0x28], eax
lea eax, [ebx + 0xc]
mov edx, 0x630a48
call fcn.00405ef8
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0041e8e0
xor eax, eax
mov dword [0x7b9334], eax
xor eax, eax
mov dword [0x7b9338], eax
call fcn.00497564
test al, al
jne 0x63060e
push 1
push 0
push 0
call sub.user32.dll_OpenInputDesktop
mov ebx, eax
test ebx, ebx
jne 0x6305f7
mov eax, dword [ebp - 0xc]
push eax
push 0x62fce0
call sub.user32.dll_EnumWindows
jmp 0x63066d
mov eax, dword [ebp - 0xc]
push eax
push 0x62fce0
push ebx
call sub.user32.dll_EnumDesktopWindows
push ebx
call sub.user32.dll_CloseDesktop
jmp 0x63066d
push 0
call sub.kernel32.dll_SetLastError
call sub.kernel32.dll_GetCurrentThreadId_1
push eax
call sub.user32.dll_GetThreadDesktop
mov ebx, eax
test ebx, ebx
jne 0x630649
mov eax, dword [ebp - 0xc]
push eax
push 0x62fce0
call sub.user32.dll_EnumWindows
test eax, eax
jne 0x63066d
push ebp
call fcn.00630454
pop ecx
call fcn.004050a8
jmp 0x630a34
mov eax, dword [ebp - 0xc]
push eax
push 0x62fce0
push ebx
call sub.user32.dll_EnumDesktopWindows
test eax, eax
jne 0x63066d
push ebp
call fcn.00630454
pop ecx
call fcn.004050a8
jmp 0x630a34
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0xc]
mov edx, dword [edx + 0x10]
cmp eax, dword [edx + 8]
sete byte [ebp - 0xe]
xor ebx, ebx
jmp 0x630737
mov edx, ebx
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov esi, dword [eax + 0x18]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
cmp esi, dword [eax + 0x18]
jne 0x63072d
mov edx, ebx
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov esi, dword [eax + 0x1c]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
cmp esi, dword [eax + 0x1c]
jne 0x63072d
mov edx, ebx
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov esi, dword [eax + 0x20]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
cmp esi, dword [eax + 0x20]
jne 0x63072d
mov edx, ebx
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov esi, dword [eax + 0x28]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
cmp esi, dword [eax + 0x28]
jne 0x63072d
mov edx, ebx
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov eax, dword [eax + 0x10]
push eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov edx, dword [eax + 0x10]
pop eax
call fcn.004061e8
je 0x630731
xor eax, eax
jmp 0x630733
mov al, 1
mov byte [ebp - 0xe], al
inc ebx
cmp byte [ebp - 0xe], 0
je 0x630749
mov eax, dword [ebp - 8]
cmp ebx, dword [eax + 8]
jl 0x630687
cmp byte [ebp - 0xe], 0
je 0x630760
push ebp
call fcn.00630454
pop ecx
call fcn.004050a8
jmp 0x630a34
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + 8]
dec eax
test eax, eax
jl 0x6309d6
inc eax
mov dword [ebp - 0x14], eax
xor ebx, ebx
cmp dword [ebp - 4], 0
je 0x630786
test ebx, ebx
je 0x6309cc
mov byte [ebp - 0xe], 0
mov eax, dword [ebp - 8]
mov edi, dword [eax + 8]
dec edi
test edi, edi
jl 0x630995
inc edi
xor esi, esi
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov eax, dword [eax + 0x18]
push eax
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
pop edx
cmp edx, dword [eax + 0x18]
jne 0x63098d
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov eax, dword [eax + 0x20]
push eax
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
pop edx
cmp edx, dword [eax + 0x20]
jne 0x63098d
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov eax, dword [eax + 0x1c]
push eax
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
pop edx
cmp edx, dword [eax + 0x1c]
jne 0x63098d
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
cmp byte [eax + 0x38], 1
jne 0x6308de
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov eax, dword [eax + 0xc]
push eax
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov edx, dword [eax + 0xc]
pop eax
call fcn.004061e8
jne 0x63098d
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
movzx eax, byte [eax + 0x14]
push eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
pop edx
mov byte [eax + 0x14], dl
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
movzx eax, byte [eax + 0x3a]
push eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
pop edx
mov byte [eax + 0x3a], dl
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov edi, dword [eax + 0x3c]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov dword [eax + 0x3c], edi
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov edi, dword [eax + 0x40]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov dword [eax + 0x40], edi
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
xor edx, edx
mov dword [eax + 0x40], edx
mov byte [ebp - 0xe], 1
jmp 0x630995
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
movzx eax, byte [eax + 0x14]
push eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
pop edx
mov byte [eax + 0x14], dl
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov edi, dword [eax + 0x3c]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov dword [eax + 0x3c], edi
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov edi, dword [eax + 0x40]
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov dword [eax + 0x40], edi
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
xor edx, edx
mov dword [eax + 0x40], edx
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov eax, dword [eax + 0x10]
push eax
mov edx, esi
mov eax, dword [ebp - 8]
call fcn.0062ea24
mov edx, dword [eax + 0x10]
pop eax
call fcn.004061e8
je 0x630987
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov edx, eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x78]
call fcn.00594474
mov byte [ebp - 0xe], 1
jmp 0x630995
inc esi
dec edi
jne 0x63079c
cmp byte [ebp - 0xe], 0
jne 0x6309cc
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov edx, dword [ebp - 0xc]
movzx edx, byte [edx + 0x31]
mov byte [eax + 0x14], dl
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x10]
mov edx, ebx
call fcn.0062ea24
mov edx, eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0x78]
call fcn.00594474
inc ebx
dec dword [ebp - 0x14]
jne 0x630778
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
mov ecx, dword [eax]
call dword [ecx + 0xc]
lea eax, [ebp - 8]
call fcn.004124a0
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x60], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x630a34
cmp byte [ebp - 0xd], 0
jne 0x630a21
jmp 0x630a17
mov esi, ebx
mov eax, dword [ebx + 0x14]
mov edx, dword [ebp - 0xc]
mov dword [edx + 0x14], eax
mov eax, esi
call fcn.00404748
mov eax, dword [ebp - 0xc]
mov ebx, dword [eax + 0x14]
test ebx, ebx
jne 0x630a05
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0xc]
call fcn.00439540
ret
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret