Function at 0x4ef8c3
Capabilities:
Capture screenshot

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff40
push ebx
push esi
push edi
mov esi, dword [ebp + 8]
cmp dword [0x56ac2c], 0
jne 0x4f0a84
mov dword [0x56ac2c], 1
xor eax, eax
mov dword [ebp - 0x24], eax
xor edx, edx
mov dword [ebp - 0x70], edx
xor ecx, ecx
mov dword [ebp - 0x60], ecx
xor eax, eax
mov dword [ebp - 0x44], eax
push dword [esi]
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x4f09da
push dword [esi]
call sub.USER32.dll_IsWindowVisible
test eax, eax
je 0x4f09da
push dword [esi]
call fcn.0051e0ad
test eax, eax
je 0x4ef954
push dword [0x56ceec]
call sub.USER32.dll_GetTopWindow
mov dword [ebp - 0x88], eax
push dword [ebp - 0x88]
call sub.USER32.dll_IsZoomed
test eax, eax
je 0x4ef954
mov edx, dword [esi]
cmp edx, dword [ebp - 0x88]
jne 0x4f09da
mov ecx, dword [esi + 0x6bc]
sub ecx, 3
je 0x4ef977
dec ecx
je 0x4f09da
sub ecx, 4
je 0x4f09da
dec ecx
je 0x4ef9e8
jmp 0x4efa09
cmp dword [esi + 0x6c0], 1
jne 0x4ef9b4
push dword [esi]
call fcn.00501b23
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 0
je 0x4f09da
push 0
push 1
push 1
push 1
push 1
push dword [ebp - 0x8c]
call fcn.00516d09
jmp 0x4f09da
push dword [esi]
call fcn.0048bf7c
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0
je 0x4f09da
push 0
push 1
push 1
push 1
push 1
push dword [ebp - 0x90]
call fcn.00517489
jmp 0x4f09da
cmp dword [esi + 0x6c0], 1
je 0x4f09da
cmp dword [esi + 0x6f8], 0
je 0x4efa09
push esi
call fcn.004728f8
jmp 0x4f09da
cmp dword [esi + 0x810], 0
je 0x4f09da
cmp dword [ebp + 0xc], 0
jne 0x4efa3b
push dword [esi + 0x810]
call sub.USER32.dll_GetDC
mov dword [ebp + 0xc], eax
cmp dword [ebp + 0xc], 0
je 0x4f09da
mov dword [ebp - 0x44], 1
mov eax, dword [esi]
cmp eax, dword [0x5646e8]
jne 0x4efa4c
push 1
call fcn.00494020
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x3c], edx
cmp dword [esi + 0x8f8], 0
jne 0x4efa69
mov ecx, dword [0x560c10]
cmp ecx, dword [esi]
jne 0x4efbc7
cmp dword [esi + 0x8f8], 0
je 0x4efa7b
push 0
push dword [esi]
call fcn.00429c43
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x70], eax
push dword [ebp - 0x70]
call sub.GDI32.dll_CreateCompatibleDC
mov dword [ebp + 0xc], eax
cmp dword [ebp + 0xc], 0
je 0x4efbab
push dword [ebp - 0x70]
call sub.GDI32.dll_CreateCompatibleDC
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0
je 0x4efbab
cmp dword [esi + 0x920], 0
jne 0x4efacc
push dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
sub edx, dword [ebp + 0x10]
push edx
push dword [ebp - 0x70]
call sub.GDI32.dll_CreateCompatibleBitmap
mov dword [esi + 0x920], eax
cmp dword [esi + 0x920], 0
je 0x4efba3
push dword [esi + 0x920]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
mov dword [ebp - 0x60], eax
cmp dword [esi + 0x8f8], 0
je 0x4efb3f
push dword [esi + 0x8f8]
push dword [ebp - 0x74]
call sub.GDI32.dll_SelectObject
mov dword [ebp - 0x64], eax
push 0xcc0020
push 0
push 0
push dword [ebp - 0x74]
push dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x18]
sub ecx, dword [ebp + 0x10]
push ecx
push 0
push 0
push dword [ebp + 0xc]
call sub.GDI32.dll_BitBlt
push dword [ebp - 0x64]
push dword [ebp - 0x74]
call sub.GDI32.dll_SelectObject
xor eax, eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x24], 1
jmp 0x4efba3
mov edx, dword [0x55f890]
push dword [edx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
xor ecx, ecx
mov dword [ebp - 0xb0], ecx
xor eax, eax
mov dword [ebp - 0xac], eax
mov edx, dword [ebp + 0x18]
sub edx, dword [ebp + 0x10]
mov dword [ebp - 0xa8], edx
mov ecx, dword [ebp + 0x1c]
mov dword [ebp - 0xa4], ecx
push 0
push 0
push 0x56ac36
lea eax, [ebp - 0xb0]
push eax
push 6
push 0
push 0
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
xor edx, edx
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x24], 2
push dword [ebp - 0x74]
call sub.GDI32.dll_DeleteDC
cmp dword [ebp - 0x24], 0
jne 0x4efbe3
cmp dword [ebp + 0xc], 0
je 0x4efbbf
push dword [ebp + 0xc]
call sub.GDI32.dll_DeleteDC
mov ecx, dword [ebp - 0x70]
mov dword [ebp + 0xc], ecx
jmp 0x4efbe3
cmp dword [esi + 0x920], 0
je 0x4efbe3
push dword [esi + 0x920]
call sub.GDI32.dll_DeleteObject
xor eax, eax
mov dword [esi + 0x920], eax
cmp dword [esi + 0x684], 0
jne 0x4efc2b
cmp dword [ebp - 0x24], 0
jne 0x4f09da
mov edx, dword [0x55f890]
push dword [edx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
push 0
push 0
push 0x56ac3a
lea ecx, [ebp + 0x10]
push ecx
push 6
push 0
push 0
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
jmp 0x4f09da
mov eax, dword [esi + 0x99c]
mov dword [ebp - 0x50], eax
cmp dword [esi + 0x70c], 1
je 0x4efc4f
cmp dword [esi + 0x70c], 2
jne 0x4efc59
cmp dword [0x56a184], 1
jne 0x4efc59
mov edx, dword [esi + 0x99c]
dec edx
add dword [ebp - 0x50], edx
mov ecx, dword [esi + 0x99c]
mov dword [ebp - 0x58], ecx
mov eax, dword [esi + 0x6b4]
sub eax, dword [esi + 0x6b8]
mov dword [ebp - 0x48], eax
mov edi, eax
mov eax, dword [esi + 0x684]
mov ebx, dword [eax + 0x44]
test edi, edi
jle 0x4efc90
cmp ebx, dword [esi + 0x684]
je 0x4efc90
mov ebx, dword [ebx + 0x44]
dec edi
test edi, edi
jg 0x4efc80
test ebx, ebx
je 0x4efbec
mov eax, dword [esi]
cmp eax, dword [0x560bec]
je 0x4efd93
cmp dword [esi + 0x6bc], 0
je 0x4efcce
cmp dword [esi + 0x6bc], 1
je 0x4efcce
cmp dword [esi + 0x6bc], 2
je 0x4efcce
cmp dword [esi + 0x6bc], 9
jne 0x4efd93
mov dword [ebp - 0x78], ebx
mov edx, dword [ebp + 0x1c]
sub edx, dword [ebp - 0x50]
dec edx
mov dword [ebp - 0x4c], edx
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x54], ecx
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebx + 0x14]
jne 0x4efcf4
mov edx, dword [ebx + 0x18]
cmp edx, dword [esi + 0x998]
je 0x4efd37
push dword [ebp + 0x10]
push dword [ebp + 0x18]
push ebx
push esi
push dword [ebp + 0xc]
call fcn.004ef150
mov ebx, eax
test ebx, ebx
je 0x4efd90
cmp dword [ebp - 0x48], 0
jne 0x4efd1e
push 1
push esi
call fcn.00520478
jmp 0x4efd26
push 0
push esi
call fcn.00520478
mov edi, dword [esi + 0x6b4]
sub edi, dword [esi + 0x6b8]
jmp 0x4efc73
cmp ebx, dword [esi + 0x684]
je 0x4efd42
mov ebx, dword [ebx + 0x44]
mov eax, dword [ebp - 0x50]
sub dword [ebp - 0x4c], eax
mov edx, dword [ebx + 8]
cmp edx, dword [ebp - 0x54]
je 0x4efd82
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x54], ecx
cmp dword [esi + 0x70c], 3
je 0x4efd71
cmp dword [esi + 0x70c], 2
jne 0x4efd82
cmp dword [0x56a184], 2
jne 0x4efd82
mov eax, dword [esi + 0x99c]
mov ecx, 3
cdq
idiv ecx
sub dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x50]
neg eax
cmp eax, dword [ebp - 0x4c]
jle 0x4efce1
mov ebx, dword [ebp - 0x78]
mov eax, dword [ebx + 8]
mov dword [ebp - 0x54], eax
mov edx, dword [ebp + 0x1c]
sub edx, dword [ebp - 0x50]
dec edx
mov dword [ebp - 0x4c], edx
cmp ebx, dword [esi + 0x684]
je 0x4efe31
mov ecx, dword [ebp - 0x50]
sub dword [ebp - 0x4c], ecx
mov ebx, dword [ebx + 0x44]
mov eax, dword [ebx + 8]
cmp eax, dword [ebp - 0x54]
je 0x4efda3
mov edx, dword [ebx + 8]
mov dword [ebp - 0x54], edx
cmp dword [esi + 0x70c], 3
je 0x4efde1
cmp dword [esi + 0x70c], 2
jne 0x4efdf2
cmp dword [0x56a184], 2
jne 0x4efdf2
mov eax, dword [esi + 0x99c]
mov ecx, 3
cdq
idiv ecx
sub dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x50]
neg eax
cmp eax, dword [ebp - 0x4c]
jle 0x4efda3
mov edx, dword [ebp - 0x50]
add dword [ebp - 0x4c], edx
cmp dword [esi + 0x70c], 3
je 0x4efe1d
cmp dword [esi + 0x70c], 2
jne 0x4efe2e
cmp dword [0x56a184], 2
jne 0x4efe2e
mov eax, dword [esi + 0x99c]
mov ecx, 3
cdq
idiv ecx
add dword [ebp - 0x4c], eax
mov ebx, dword [ebx + 0x40]
push dword [esi + 0x924]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
mov dword [ebp - 0x6c], eax
mov eax, dword [ebx + 0x1c]
mov dword [ebp - 0x1c], eax
mov edx, dword [0x55f890]
mov dword [ebp - 0x20], edx
mov ecx, dword [ebp - 0x1c]
push dword [ecx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetTextColor
mov eax, dword [ebp - 0x20]
push dword [eax*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
push 1
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkMode
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x24], 1
jne 0x4efe97
mov dword [ebp - 0x84], 4
jmp 0x4eff32
mov dword [ebp - 0x84], 6
cmp dword [ebp - 0x4c], 0
jl 0x4efeeb
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xb0], edx
xor ecx, ecx
mov dword [ebp - 0xac], ecx
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xa8], eax
mov edx, dword [ebp - 0x4c]
add edx, dword [ebp - 0x50]
mov dword [ebp - 0xa4], edx
push 0
push 0
push 0x56ac3e
lea ecx, [ebp - 0xb0]
push ecx
push 6
push 0
push 0
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xb0], eax
mov edx, dword [ebp + 0x1c]
dec edx
mov dword [ebp - 0xac], edx
mov ecx, dword [ebp + 0x18]
mov dword [ebp - 0xa8], ecx
mov eax, dword [ebp - 0xac]
inc eax
mov dword [ebp - 0xa4], eax
push 0
push 0
push 0x56ac42
lea edx, [ebp - 0xb0]
push edx
push 6
push 0
push 0
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
xor ecx, ecx
mov dword [ebp - 0x68], ecx
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], eax
mov dword [ebp - 4], eax
xor edx, edx
mov dword [ebp - 0x28], edx
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebx + 8]
mov dword [ebp - 0x54], eax
xor edx, edx
mov dword [ebp - 0x7c], edx
xor ecx, ecx
mov dword [ebp - 0x5c], ecx
test ebx, ebx
je 0x4f0994
cmp dword [ebp - 0x5c], 0
je 0x4f001d
xor eax, eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x68], 0
je 0x4effab
push dword [ebp - 0x6c]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
push dword [ebp - 0x68]
call sub.GDI32.dll_DeleteObject
xor edx, edx
mov dword [ebp - 0x68], edx
push dword [esi + 0x924]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
mov dword [ebp - 0x6c], eax
xor ecx, ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], ecx
mov dword [ebp - 4], ecx
xor eax, eax
mov dword [ebp - 0x28], eax
xor edx, edx
mov dword [ebp - 0x2c], edx
mov eax, dword [ebx + 0x1c]
mov dword [ebp - 0x1c], eax
mov edx, dword [0x55f890]
mov dword [ebp - 0x20], edx
mov ecx, dword [ebp - 0x1c]
push dword [ecx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetTextColor
mov eax, dword [ebp - 0x20]
push dword [eax*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
xor edx, edx
mov dword [ebp - 0x7c], edx
cmp dword [ebp - 0x24], 1
jne 0x4f0013
mov dword [ebp - 0x84], 4
jmp 0x4f001d
mov dword [ebp - 0x84], 6
push dword [ebp + 0xc]
call fcn.004ee0e6
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x3c]
add ecx, 2
mov dword [ebp - 0xb0], ecx
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xa8], eax
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0xac], edx
mov ecx, dword [ebp - 0x4c]
add ecx, dword [ebp - 0x50]
mov dword [ebp - 0xa4], ecx
cmp dword [esi + 0x70c], 1
je 0x4f0075
cmp dword [esi + 0x70c], 2
jne 0x4f0101
cmp dword [0x56a184], 1
jne 0x4f0101
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xb4], eax
mov edx, dword [esi + 0x99c]
dec edx
sub dword [ebp - 0xa4], edx
mov ecx, dword [ebp - 0xa4]
mov dword [ebp - 0xbc], ecx
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xc0], eax
mov edx, dword [ebp + 0x18]
mov dword [ebp - 0xb8], edx
cmp dword [ebp - 0x24], 0
jne 0x4f0101
mov ecx, dword [0x55f890]
push dword [ecx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
mov dword [ebp - 0x94], eax
push 0
push 0
push 0x56ac46
lea eax, [ebp - 0xc0]
push eax
push 6
push dword [ebp - 0xbc]
push dword [ebp - 0xc0]
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
push dword [ebp - 0x94]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
cmp ebx, dword [esi + 0x69c]
jne 0x4f012a
cmp dword [ebx + 0x20], 2
jne 0x4f012a
push dword [ebp - 0x24]
push dword [ebp - 0x3c]
lea edx, [ebp - 0xb0]
push edx
push dword [ebp + 0xc]
push esi
call fcn.0042f031
jmp 0x4f084d
xor ecx, ecx
mov edi, ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], ecx
push dword [ebx]
call fcn.0054c2d0
pop ecx
mov dword [ebp - 0x48], eax
cmp edi, dword [ebp - 0x48]
jge 0x4f06d5
cmp dword [0x55d2c4], 0
je 0x4f016e
push edi
push dword [ebx]
call fcn.00557258
add esp, 8
cmp eax, 1
je case.0x4f0184.0
cmp eax, 2
je case.0x4f0184.0
mov eax, dword [ebx]
xor edx, edx
mov dl, byte [eax + edi]
cmp edx, 0x1f
ja case.0x4f0184.0
mov dl, byte [edx + 0x4f018b]
jmp dword [edx*4 + 0x4f01ab]
cmp dword [ebp - 0x28], 0
je 0x4f01d9
mov dword [ebp - 0x2c], 1
jmp case.0x4f0184.0
cmp dword [ebp - 0x7c], 0
jne 0x4f01e9
mov dword [ebp - 0x7c], 1
mov dword [ebp - 0x38], edi
mov eax, dword [ebp - 8]
cmp eax, 1
sbb edx, edx
neg edx
mov dword [ebp - 8], edx
jmp 0x4f06c6
cmp dword [ebp - 0x28], 0
je 0x4f020d
mov dword [ebp - 0x2c], 1
jmp case.0x4f0184.0
cmp dword [ebp - 0x7c], 0
jne 0x4f021d
mov dword [ebp - 0x7c], 1
mov dword [ebp - 0x38], edi
mov ecx, dword [ebp - 0x10]
cmp ecx, 1
sbb eax, eax
neg eax
mov dword [ebp - 0x10], eax
jmp 0x4f06c6
cmp dword [ebp - 0x28], 0
je 0x4f0241
mov dword [ebp - 0x2c], 1
jmp case.0x4f0184.0
cmp dword [ebp - 0x7c], 0
jne 0x4f0251
mov dword [ebp - 0x7c], 1
mov dword [ebp - 0x38], edi
mov edx, dword [ebp - 0x18]
cmp edx, 1
sbb ecx, ecx
neg ecx
mov dword [ebp - 0x18], ecx
jmp 0x4f06c6
cmp dword [ebp - 0x28], 0
je 0x4f0275
mov dword [ebp - 0x2c], 1
jmp case.0x4f0184.0
cmp dword [ebp - 0x7c], 0
jne 0x4f0285
mov dword [ebp - 0x7c], 1
mov dword [ebp - 0x38], edi
push dword [0x55f890]
push dword [ebx + 0x1c]
lea eax, [ebp - 0x20]
push eax
lea edx, [ebp - 0x1c]
push edx
mov ecx, dword [ebx]
add ecx, edi
push ecx
call fcn.004edefc
add edi, eax
jmp 0x4f06c6
cmp dword [ebp - 0x7c], 0
jne 0x4f02b7
mov dword [ebp - 0x7c], 1
mov dword [ebp - 0x38], edi
cmp dword [ebp - 0x28], 0
je 0x4f02c6
mov dword [ebp - 0x2c], 1
jmp case.0x4f0184.0
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 8], eax
mov edx, dword [ebx + 0x1c]
mov dword [ebp - 0x1c], edx
mov ecx, dword [0x55f890]
mov dword [ebp - 0x20], ecx
jmp 0x4f06c6
cmp dword [esi + 0x6bc], 9
jne case.0x4f0184.0
cmp dword [ebp - 0x7c], 0
je 0x4f0303
cmp dword [ebp - 0x28], 0
jne 0x4f0303
mov dword [ebp - 0x2c], 1
jmp case.0x4f0184.0
cmp dword [ebp - 0x7c], 0
jne 0x4f0313
mov dword [ebp - 0x7c], 1
mov dword [ebp - 0x38], edi
inc dword [ebp - 0x28]
jmp 0x4f06c6
cmp dword [ebp - 0x34], 0xffffffff
jne 0x4f0327
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x7c], 0
je 0x4f06c6
xor edx, edx
mov dword [ebp - 0x7c], edx
mov ecx, dword [ebp - 0x38]
cmp ecx, dword [ebp - 0x34]
jle 0x4f03f9
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x34]
push eax
mov edx, dword [ebx]
add edx, dword [ebp - 0x34]
push edx
push dword [ebp + 0xc]
call fcn.004ee101
sub eax, dword [ebp - 0x30]
add eax, dword [ebp - 0xb0]
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0x14], 0
je 0x4f03c0
mov ecx, dword [0x55f890]
push dword [ecx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetTextColor
mov eax, dword [0x55f8a4]
push dword [eax*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
push 0
mov edx, dword [ebp - 0x38]
sub edx, dword [ebp - 0x34]
push edx
mov ecx, dword [ebx]
add ecx, dword [ebp - 0x34]
push ecx
lea eax, [ebp - 0xb0]
push eax
push 6
push dword [ebp - 0x4c]
push dword [ebp - 0xb0]
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
jmp 0x4f03ed
push 0
mov edx, dword [ebp - 0x38]
sub edx, dword [ebp - 0x34]
push edx
mov ecx, dword [ebx]
add ecx, dword [ebp - 0x34]
push ecx
lea eax, [ebp - 0xb0]
push eax
push dword [ebp - 0x84]
push dword [ebp - 0x4c]
push dword [ebp - 0xb0]
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
mov edx, dword [ebp - 0xa8]
mov dword [ebp - 0xb0], edx
mov ecx, dword [ebp - 0x1c]
push dword [ecx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetTextColor
mov eax, dword [ebp - 0x20]
push dword [eax*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
cmp dword [ebp - 0x24], 1
jne 0x4f0444
mov edx, dword [ebp - 0x20]
cmp edx, dword [0x55f890]
je 0x4f043a
mov dword [ebp - 0x84], 6
jmp 0x4f0444
mov dword [ebp - 0x84], 4
cmp dword [ebp - 0x28], 0
je 0x4f05bf
mov ecx, dword [ebp - 0xb0]
mov dword [ebp - 0xa8], ecx
cmp dword [ebp - 0x28], 0
jle 0x4f0482
push dword [ebp - 0xa8]
mov eax, dword [ebp - 0x3c]
add eax, 2
push eax
push esi
call fcn.004ee093
mov dword [ebp - 0xa8], eax
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0
jg 0x4f0460
xor edx, edx
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x14], 0
je 0x4f04dc
mov ecx, dword [0x55f890]
push dword [ecx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetTextColor
mov eax, dword [0x55f8a4]
push dword [eax*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
push 0
push 0
mov edx, dword [ebx]
add edx, dword [ebp - 0x34]
push edx
lea ecx, [ebp - 0xb0]
push ecx
push 6
push dword [ebp - 0x4c]
push dword [ebp - 0xb0]
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
jmp 0x4f0504
push 0
push 0
mov eax, dword [ebx]
add eax, dword [ebp - 0x34]
push eax
lea edx, [ebp - 0xb0]
push edx
push dword [ebp - 0x84]
push dword [ebp - 0x4c]
push dword [ebp - 0xb0]
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
cmp dword [ebp - 0xc], 0
je 0x4f05b3
cmp dword [ebp - 0x14], 0
je 0x4f0532
mov ecx, dword [0x55f890]
push dword [ecx*4 + 0x57d6d8]
push 1
push 0
call sub.GDI32.dll_CreatePen
mov dword [ebp - 0x98], eax
jmp 0x4f054b
mov eax, dword [ebp - 0x1c]
push dword [eax*4 + 0x57d6d8]
push 1
push 0
call sub.GDI32.dll_CreatePen
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 0
je 0x4f05b3
push dword [ebp - 0x98]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
mov dword [ebp - 0x9c], eax
push 0
mov edx, dword [ebp - 0x4c]
add edx, dword [ebp - 0x58]
add edx, 0xfffffffe
push edx
push dword [ebp - 0xb0]
push dword [ebp + 0xc]
call sub.GDI32.dll_MoveToEx
mov ecx, dword [ebp - 0x4c]
add ecx, dword [ebp - 0x58]
add ecx, 0xfffffffe
push ecx
push dword [ebp - 0xa8]
push dword [ebp + 0xc]
call sub.GDI32.dll_LineTo
push dword [ebp - 0x9c]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
push dword [ebp - 0x98]
call sub.GDI32.dll_DeleteObject
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0xb0], eax
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x14], edx
mov ecx, dword [ebp - 4]
cmp ecx, dword [ebp - 8]
jne 0x4f05d9
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x10]
je 0x4f06a7
push dword [ebp - 0x6c]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
cmp dword [ebp - 0x68], 0
je 0x4f05f2
push dword [ebp - 0x68]
call sub.GDI32.dll_DeleteObject
mov edx, dword [ebp - 8]
mov dword [ebp - 4], edx
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0xc], ecx
cmp dword [ebp - 4], 0
jne 0x4f060a
cmp dword [ebp - 0xc], 0
je 0x4f0686
mov eax, dword [esi + 0x990]
cmp dword [ebp - 4], 0
je 0x4f0629
cmp eax, 0x190
jle 0x4f0624
mov eax, 0x190
jmp 0x4f0629
mov eax, 0x2bc
lea edx, [esi + 0x928]
push edx
push 0
push 0
push 0
push 0
push dword [esi + 0x994]
push 0
push dword [ebp - 0xc]
push 0
push eax
push 0
push 0
push 0
mov ecx, dword [esi + 0x98c]
neg ecx
push ecx
call sub.GDI32.dll_CreateFontA
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
je 0x4f0673
push dword [ebp - 0x68]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
mov dword [ebp - 0x6c], eax
jmp 0x4f069c
push dword [esi + 0x924]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
mov dword [ebp - 0x6c], eax
jmp 0x4f069c
xor eax, eax
mov dword [ebp - 0x68], eax
push dword [esi + 0x924]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
mov dword [ebp - 0x6c], eax
push dword [ebp + 0xc]
call fcn.004ee0e6
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], edi
xor edx, edx
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x2c], 0
je 0x4f06c6
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x34], 0xffffffff
jmp 0x4f013f
cmp edi, dword [ebp - 0x48]
jge 0x4f06d5
inc edi
cmp edi, dword [ebp - 0x48]
jl 0x4f0148
cmp dword [ebp - 0x7c], 0
jne case.0x4f0184.0
cmp dword [ebp - 0x34], 0xffffffff
jne 0x4f06eb
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x38]
cmp edx, dword [ebp - 0x34]
jle 0x4f06f6
mov edi, dword [ebp - 0x38]
cmp edi, dword [ebp - 0x34]
jle 0x4f07bd
mov eax, edi
sub eax, dword [ebp - 0x34]
push eax
mov edx, dword [ebx]
add edx, dword [ebp - 0x34]
push edx
push dword [ebp + 0xc]
call fcn.004ee101
sub eax, dword [ebp - 0x30]
add eax, dword [ebp - 0xb0]
mov dword [ebp - 0xa8], eax
cmp dword [ebp - 0x14], 0
je 0x4f0787
mov ecx, dword [0x55f890]
push dword [ecx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetTextColor
mov dword [ebp - 0x80], eax
mov eax, dword [0x55f8a4]
push dword [eax*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
push 0
sub edi, dword [ebp - 0x34]
push edi
mov edx, dword [ebx]
add edx, dword [ebp - 0x34]
push edx
lea ecx, [ebp - 0xb0]
push ecx
push 6
push dword [ebp - 0x4c]
push dword [ebp - 0xb0]
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
push dword [ebp - 0x80]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetTextColor
jmp 0x4f07b1
push 0
sub edi, dword [ebp - 0x34]
push edi
mov eax, dword [ebx]
add eax, dword [ebp - 0x34]
push eax
lea edx, [ebp - 0xb0]
push edx
push dword [ebp - 0x84]
push dword [ebp - 0x4c]
push dword [ebp - 0xb0]
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
mov ecx, dword [ebp - 0xa8]
mov dword [ebp - 0xb0], ecx
cmp dword [ebp - 0x24], 1
je 0x4f084d
mov eax, dword [0x55f890]
push dword [eax*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
mov edx, dword [ebp + 0x18]
mov dword [ebp - 0xa8], edx
push 0
push 0
push 0x56ac4a
lea ecx, [ebp - 0xb0]
push ecx
push 6
push dword [ebp - 0x4c]
push dword [ebp - 0xb0]
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
cmp ebx, dword [esi + 0x69c]
jne 0x4f0815
cmp dword [ebx + 0x20], 2
je 0x4f084d
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0xb0], eax
mov edx, dword [ebp - 0x3c]
add edx, 2
mov dword [ebp - 0xa8], edx
push 0
push 0
push 0x56ac4e
lea ecx, [ebp - 0xb0]
push ecx
push 6
push dword [ebp - 0x4c]
push dword [ebp - 0xb0]
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
cmp ebx, dword [esi + 0x69c]
jne 0x4f0888
cmp dword [0x56cef0], 0
je 0x4f0888
push dword [esi]
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x4f0888
push dword [esi]
call sub.USER32.dll_IsWindowVisible
test eax, eax
je 0x4f0888
mov eax, dword [esi]
cmp eax, dword [0x56cef4]
jne 0x4f0888
mov dword [esi + 0x6a4], 1
cmp ebx, dword [esi + 0x6ac]
jne 0x4f0898
xor edx, edx
mov dword [esi + 0x6ac], edx
mov ebx, dword [ebx + 0x40]
test ebx, ebx
je 0x4f0994
mov ecx, dword [ebp - 0x50]
add dword [ebp - 0x4c], ecx
mov eax, dword [ebx + 8]
cmp eax, dword [ebp - 0x54]
je 0x4f095c
mov edx, dword [ebx + 8]
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x5c], 1
cmp dword [esi + 0x70c], 3
je 0x4f08e1
cmp dword [esi + 0x70c], 2
jne 0x4f095c
cmp dword [0x56a184], 2
jne 0x4f095c
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0xb0], ecx
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xa8], eax
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0xac], edx
mov eax, dword [esi + 0x99c]
mov ecx, 3
cdq
idiv ecx
add eax, dword [ebp - 0x4c]
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0x24], 1
je 0x4f094b
mov eax, dword [0x55f890]
push dword [eax*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
push 0
push 0
push 0x56ac52
lea edx, [ebp - 0xb0]
push edx
push 6
push 0
push 0
push dword [ebp + 0xc]
call sub.GDI32.dll_ExtTextOutA
mov eax, dword [esi + 0x99c]
mov ecx, 3
cdq
idiv ecx
add dword [ebp - 0x4c], eax
mov eax, dword [ebp + 0x1c]
sub eax, dword [ebp - 0x50]
dec eax
cmp eax, dword [ebp - 0x4c]
jl 0x4f0994
mov edx, dword [ebp - 0x1c]
push dword [edx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetTextColor
mov ecx, dword [ebp - 0x20]
push dword [ecx*4 + 0x57d6d8]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkColor
test ebx, ebx
jne 0x4eff6d
push dword [ebp - 0x40]
push dword [ebp + 0xc]
call sub.GDI32.dll_SetBkMode
push dword [ebp - 0x6c]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
cmp dword [ebp - 0x68], 0
je 0x4f09b8
push dword [ebp - 0x68]
call sub.GDI32.dll_DeleteObject
mov eax, dword [esi]
cmp eax, dword [0x560c10]
jne 0x4f09da
push dword [ebp + 0xc]
push 0
push dword [esi]
call fcn.00459918
push dword [ebp + 0xc]
push 1
push dword [esi]
call fcn.00459918
cmp dword [ebp - 0x24], 0
je 0x4f0a68
xor edx, edx
mov dword [ebp - 0xa0], edx
cmp dword [esi + 0x8fc], 0
je 0x4f0a13
push 0
push dword [esi + 0x8fc]
push dword [ebp - 0x70]
call sub.GDI32.dll_SelectPalette
mov dword [ebp - 0xa0], eax
push dword [ebp - 0x70]
call sub.GDI32.dll_RealizePalette
push 0xcc0020
push 0
push 0
push dword [ebp + 0xc]
push dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x18]
sub ecx, dword [ebp + 0x10]
push ecx
push 0
push dword [ebp + 0x10]
push dword [ebp - 0x70]
call sub.GDI32.dll_BitBlt
cmp dword [esi + 0x8fc], 0
je 0x4f0a4f
push 0
push dword [ebp - 0xa0]
push dword [ebp - 0x70]
call sub.GDI32.dll_SelectPalette
push dword [ebp - 0x60]
push dword [ebp + 0xc]
call sub.GDI32.dll_SelectObject
push dword [ebp + 0xc]
call sub.GDI32.dll_DeleteDC
mov eax, dword [ebp - 0x70]
mov dword [ebp + 0xc], eax
cmp dword [ebp - 0x44], 0
je 0x4f0a7c
push dword [ebp + 0xc]
push dword [esi + 0x810]
call sub.USER32.dll_ReleaseDC
xor edx, edx
mov dword [0x56ac2c], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18