Function at 0x40fcc0
Capabilities:
Capture screenshot

Disassembly:
mov eax, dword [0x4618a4]
sub esp, 0x404
push ebx
push ebp
push esi
push edi
push eax
call fcn.0040b150
mov ebp, dword [esp + 0x41c]
mov edi, eax
neg ebp
sbb ebp, ebp
push edi
and ebp, 0xffffffeb
add ebp, 0x15
call fcn.0040d600
mov ecx, dword [0x456b18]
push 0
push ecx
call fcn.0040b4d0
mov eax, dword [0x44e0fc]
mov ebx, dword [sym.imp.GDI32.dll_BitBlt]
mov edx, dword [0x456dd4]
add esp, 0x10
cmp eax, 0xe
push 0xcc0020
je 0x40fe5f
push ebp
push 0
push edx
push 0x14
push 0x19
push 0
push 0
push edi
call ebx
mov eax, dword [0x44e0f8]
mov esi, 0x19
lea ecx, [eax - 0x96]
mov eax, 0x51eb851f
imul ecx
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov dword [esp + 0x10], edx
je 0x40fdae
test dl, 1
je 0x40fd7b
mov edx, dword [0x456dd4]
push 0xcc0020
push ebp
push 0x7f
push edx
push 0x14
push 0xc
push 0
push esi
push edi
call ebx
mov edx, dword [esp + 0x10]
mov esi, 0x25
mov eax, edx
cdq
sub eax, edx
sar eax, 1
je 0x40fdae
mov dword [esp + 0x10], eax
mov eax, dword [0x456dd4]
push 0xcc0020
push ebp
push 0x7f
push eax
push 0x14
push 0x19
push 0
push esi
push edi
call ebx
mov eax, dword [esp + 0x10]
add esi, 0x19
dec eax
mov dword [esp + 0x10], eax
jne 0x40fd88
mov ecx, dword [0x456dd4]
push 0xcc0020
push ebp
push 0x1a
push ecx
push 0x14
push 0x64
push 0
push esi
push edi
call ebx
mov edx, dword [0x44e0f8]
mov eax, 0x51eb851f
add esi, 0x64
lea ecx, [edx - 0x96]
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, edx
mov dword [esp + 0x10], eax
je 0x40fe45
test al, 1
je 0x40fe13
mov ecx, dword [0x456dd4]
push 0xcc0020
push ebp
push 0x7f
push ecx
push 0x14
push 0xd
push 0
push esi
push edi
call ebx
mov eax, dword [esp + 0x10]
add esi, 0xd
cdq
sub eax, edx
sar eax, 1
je 0x40fe45
mov dword [esp + 0x10], eax
mov edx, dword [0x456dd4]
push 0xcc0020
push ebp
push 0x7f
push edx
push 0x14
push 0x19
push 0
push esi
push edi
call ebx
mov eax, dword [esp + 0x10]
add esi, 0x19
dec eax
mov dword [esp + 0x10], eax
jne 0x40fe1e
mov eax, dword [0x456dd4]
push 0xcc0020
push ebp
push 0x99
push eax
push 0x14
push 0x19
jmp 0x40fee2
mov ecx, dword [0x44e0f8]
push 0x2a
push 0x48
push edx
push 0xe
push 0x19
push 0
push 0
push edi
mov dword [esp + 0x34], ecx
call ebx
mov eax, dword [esp + 0x10]
mov esi, 0x19
sub eax, esi
cmp eax, 0x32
jle 0x40fec3
lea ecx, [eax - 0x33]
mov eax, 0x51eb851f
mul ecx
shr edx, 3
inc edx
mov dword [esp + 0x10], edx
mov edx, dword [0x456dd4]
push 0xcc0020
push 0x39
push 0x48
push edx
push 0xe
push 0x19
push 0
push esi
push edi
call ebx
mov eax, dword [esp + 0x10]
add esi, 0x19
dec eax
mov dword [esp + 0x10], eax
jne 0x40fe9b
mov eax, ebp
mov ecx, dword [0x456dd4]
neg eax
sbb eax, eax
push 0xcc0020
and eax, 0xf
add eax, 0x2a
push eax
push 0x63
push ecx
push 0xe
push 0x32
push 0
push esi
push edi
call ebx
push 0
push 0
call fcn.0040b4d0
mov edx, dword [0x4618a4]
push edi
push edx
call fcn.0040b170
mov eax, dword [0x44e0fc]
add esp, 0x10
cmp eax, 0xe
jne 0x40ffad
push 0
call fcn.0042b782
mov esi, eax
add esp, 4
test esi, esi
jl 0x40ff70
call fcn.0042acf0
cmp esi, eax
jge 0x40ff70
mov eax, dword [0x46067c]
test eax, eax
jne 0x40ff58
lea eax, [esp + 0x14]
push eax
push 0
call fcn.0042b782
add esp, 4
push eax
call fcn.0042ab8e
push 0
call fcn.0042b782
push eax
call fcn.0042a8ca
add esp, 0x10
jmp 0x40ff92
xor eax, eax
mov cl, byte [eax + 0x461580]
mov byte [esp + eax + 0x14], cl
inc eax
test cl, cl
jne 0x40ff5a
call fcn.00416180
jmp 0x40ff92
mov ax, word [0x44f348]
mov ecx, dword [str._no_file_]
mov edx, dword [0x44f344]
mov word [esp + 0x1c], ax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], edx
or eax, 0xffffffff
neg ebp
sbb ebp, ebp
lea ecx, [esp + 0x14]
and ebp, 0xfffffffe
add ebp, 2
push ebp
push eax
push ecx
push 0xffffffffffffffff
call fcn.004111b0
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x404
ret