Function at 0x472764
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffac
push ebx
push esi
push edi
mov ebx, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
mov byte [ebp - 0xd], 0
mov byte [ebp - 0xe], 0
cmp ebx, 1
jge 0x472785
mov ebx, 1
cmp ebx, 0xa
jle 0x47278f
mov ebx, 0xa
xor eax, eax
xor edx, edx
mov dword [ebp - 0x14], eax
mov eax, dword [0x59ef28]
xor esi, esi
test eax, eax
mov dword [ebp - 0x18], edx
jne 0x4727b3
push 0x5f0c31
call sub.KERNEL32.dll_GetModuleHandleA
mov dword [0x59ef28], eax
mov edx, dword [0x59ef28]
test edx, edx
jne 0x4727cc
push 0x5f0c3b
call sub.KERNEL32.dll_LoadLibraryA
mov dword [0x59ef28], eax
mov eax, dword [0x59ef28]
test eax, eax
je 0x472961
push 0x5f0c45
push eax
call sub.KERNEL32.dll_GetProcAddress
test eax, eax
je 0x472961
push 0x5f0c4d
mov edx, dword [0x59ef28]
push edx
call sub.KERNEL32.dll_GetProcAddress
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x472961
push 0x5f0c55
mov eax, dword [0x59ef28]
push eax
call sub.KERNEL32.dll_GetProcAddress
test eax, eax
je 0x472961
push 0x5f0c5d
mov edx, dword [0x59ef28]
push edx
call sub.KERNEL32.dll_GetProcAddress
test eax, eax
je 0x472961
push 0x5f0c65
mov ecx, dword [0x59ef28]
push ecx
call sub.KERNEL32.dll_GetProcAddress
test eax, eax
je 0x472961
push 0x5f0c70
mov eax, dword [0x59ef28]
push eax
call sub.KERNEL32.dll_GetProcAddress
test eax, eax
je 0x472961
push 0x5f0c82
mov edx, dword [0x59ef28]
push edx
call sub.KERNEL32.dll_GetProcAddress
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
test ecx, ecx
je 0x472961
push 0x5f0c8d
mov eax, dword [0x59ef28]
push eax
call sub.KERNEL32.dll_GetProcAddress
test eax, eax
je 0x472961
push 0x5f0c97
mov edx, dword [0x59ef28]
push edx
call sub.KERNEL32.dll_GetProcAddress
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
test ecx, ecx
je 0x472961
push edi
call sub.USER32.dll_IsWindow
test eax, eax
jne 0x4728d4
call sub.USER32.dll_GetDesktopWindow
mov edi, eax
push edi
call sub.USER32.dll_GetDC
mov esi, eax
push esi
call sub.GDI32.dll_CreateCompatibleDC
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x54]
push eax
push edi
call sub.USER32.dll_GetWindowRect
push 0x18
lea ecx, [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cdq
idiv ebx
push eax
mov eax, dword [ebp - 0x4c]
cdq
idiv ebx
push eax
push ecx
call dword [ebp - 0xc]
test eax, eax
jne 0x472961
mov byte [ebp - 0xe], 1
mov eax, dword [ebp - 0x1c]
push eax
mov edx, dword [ebp - 0x18]
push edx
call sub.GDI32.dll_SelectObject
mov dword [ebp - 0x14], eax
push 0xcc0020
mov eax, dword [ebp - 0x48]
push eax
mov ecx, dword [ebp - 0x4c]
push ecx
push 0
push 0
push esi
mov eax, dword [ebp - 0x48]
cdq
idiv ebx
push eax
mov eax, ecx
cdq
idiv ebx
push eax
push 0
push 0
mov ecx, dword [ebp - 0x18]
push ecx
call sub.GDI32.dll_StretchBlt
mov eax, dword [ebp + 0x14]
lea edx, [ebp - 0x44]
push eax
push edx
mov ecx, dword [ebp + 8]
push ecx
call dword [ebp - 4]
test eax, eax
jne 0x472961
mov byte [ebp - 0xd], 1
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x472972
mov edx, dword [ebp - 0x14]
push edx
push esi
call sub.GDI32.dll_SelectObject
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x472982
mov eax, dword [ebp - 0x18]
push eax
call sub.GDI32.dll_DeleteDC
test esi, esi
je 0x47298d
push esi
push edi
call sub.USER32.dll_ReleaseDC
mov dl, byte [ebp - 0xe]
test dl, dl
je 0x47299b
lea ecx, [ebp - 0x44]
push ecx
call dword [ebp - 8]
mov al, byte [ebp - 0xd]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret