Function at 0x10017f8
Capabilities:
Check for software breakpoints

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x2c
push esi
push edi
xor esi, esi
xor eax, eax
mov dword [ebp - 0x2c], esi
lea edi, [ebp - 0x28]
stosd dword es:[edi], eax
push 0x5c
stosd dword es:[edi], eax
push esi
push 0x1006cc0
stosd dword es:[edi], eax
call sub.msvcrt.dll_memset
add esp, 0xc
push 0x20
push 0x1006cdc
push 0x64
push dword [0x1006d1c]
call dword [sym.imp.USER32.dll_LoadStringW]
push esi
mov byte [0x1006cd7], 1
mov byte [0x1006cda], 0
mov byte [0x1006cd8], 0
mov byte [0x1006cd9], 0
mov byte [0x1006cdb], 0
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push 0x5a
push eax
mov dword [ebp - 0xc], eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
mov dword [ebp - 0x14], eax
call fcn.0100178b
mov edi, dword [sym.imp.KERNEL32.dll_MulDiv]
mov dword [ebp - 0x1c], eax
cmp eax, esi
je 0x10019ea
push eax
push dword [ebp - 0xc]
call dword [sym.imp.GDI32.dll_SelectObject]
push 0x48
push dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
push dword [0x1006024]
call edi
cmp dword [0x10060c8], esi
mov dword [0x1006024], eax
mov dword [ebp - 4], esi
mov dword [ebp - 8], esi
mov dword [ebp - 0x10], esi
jle 0x10019d5
mov esi, 0x100602c
push ebx
mov ebx, dword [ebp - 0x14]
push 0x48
push ebx
push dword [esi - 4]
call edi
push 0x48
push ebx
push dword [esi]
mov dword [esi - 4], eax
call edi
push 0x48
push ebx
push dword [esi + 4]
mov dword [esi], eax
call edi
push 0x48
push ebx
push dword [esi + 8]
mov dword [esi + 4], eax
call edi
mov dword [esi + 8], eax
mov eax, dword [esi + 4]
cmp eax, dword [ebp - 8]
jle 0x10018f5
mov dword [ebp - 8], eax
push dword [esi + 0x14]
call fcn.01003edf
mov dword [esp], 0x401
lea ecx, [ebp - 0x2c]
push ecx
push 0xffffffffffffffff
push eax
push dword [ebp - 0xc]
mov dword [esi + 0x18], eax
call dword [sym.imp.USER32.dll_DrawTextW]
mov ebx, dword [ebp - 0x24]
sub ebx, dword [ebp - 0x2c]
cmp dword [esi + 0xc], 0xcc
jne 0x1001930
push 0x47
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add ebx, eax
cmp dword [esi + 0xc], 0xc9
jne 0x1001943
push 0xb
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add ebx, eax
cmp ebx, dword [ebp - 4]
jle 0x100194b
mov dword [ebp - 4], ebx
inc dword [ebp - 0x10]
mov ebx, dword [0x10060c8]
add esi, 0x20
cmp dword [ebp - 0x10], ebx
jl 0x10018bd
mov eax, dword [ebp - 4]
cmp dword [ebp - 8], eax
jge 0x100198f
test ebx, ebx
jle 0x10019d4
fild dword [ebp - 4]
mov esi, 0x1006030
mov dword [ebp - 0x10], ebx
fidiv dword [ebp - 8]
fild dword [esi]
fmul st(1)
call sub.msvcrt.dll__ftol2_sse
mov dword [esi], eax
add esi, 0x20
dec dword [ebp - 0x10]
jne 0x100197a
fstp st(0)
test ebx, ebx
jle 0x10019d4
cmp dword [0x1006940], 1
push 5
pop esi
push 7
pop ebx
jg 0x10019a8
push 3
pop esi
push 5
pop ebx
push 0x20
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [0x1006028]
imul ecx, ebx
lea eax, [ecx + eax*2]
mov ecx, dword [0x1006030]
imul ecx, esi
add eax, ecx
cmp eax, dword [section..data]
jle 0x10019d4
mov dword [section..data], eax
pop ebx
push dword [ebp - 0x18]
push dword [ebp - 0xc]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0x1c]
call dword [sym.imp.GDI32.dll_DeleteObject]
push dword [ebp - 0xc]
call dword [sym.imp.GDI32.dll_DeleteDC]
push 0x48
push dword [ebp - 0x14]
push 0xa
call edi
mov dword [0x100693c], eax
call fcn.0100158f
pop edi
pop esi
leave
ret