Function at 0x4732d8
Capabilities:
Capture screenshot

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffff20
cmp dword [0x7efb1c], 0
jne 0x47330a
cmp dword [0x7efb18], 1
jne 0x4732fd
cmp dword [0x7ccc90], 8
jne 0x473301
xor eax, eax
jmp 0x473306
mov eax, 1
test eax, eax
je 0x473313
cmp dword [0x7ce608], 0
jne 0x47331a
xor eax, eax
jmp 0x47354c
cmp dword [0x7efb1c], 1
jne 0x47342b
call fcn.0045f384
push eax
call sub.USER32.DLL_GetDC
mov edi, eax
push edi
call sub.GDI32.DLL_CreateCompatibleDC
mov esi, eax
mov eax, dword [0x7ccc8c]
push eax
mov edx, dword [0x7ccc88]
push edx
push edi
call sub.GDI32.DLL_CreateCompatibleBitmap
mov ebp, eax
push ebp
push esi
call sub.GDI32.DLL_SelectObject
mov dword [esp + 8], eax
push 0xcc0020
push 0
push 0
push edi
mov eax, dword [0x7ccc8c]
push eax
mov edx, dword [0x7ccc88]
push edx
push 0
push 0
push esi
call sub.GDI32.DLL_BitBlt
lea eax, [esp + 0xa8]
push 0x38
push 0
push eax
mov ebx, eax
call fcn.0045ea68
add esp, 0xc
mov dword [ebx], 0x28
mov eax, dword [0x7ccc88]
mov dword [ebx + 4], eax
mov edx, dword [0x7ccc8c]
neg edx
mov dword [ebx + 8], edx
mov word [ebx + 0xc], 1
mov ecx, dword [0x7ce624]
mov ax, word [ecx]
mov word [ebx + 0xe], ax
mov dword [ebx + 0x10], 3
mov edx, dword [0x7ce624]
mov ecx, dword [edx + 0xc]
mov dword [ebx + 0x28], ecx
mov eax, dword [0x7ce624]
mov edx, dword [eax + 0x10]
mov dword [ebx + 0x2c], edx
mov ecx, dword [0x7ce624]
mov eax, dword [ecx + 0x14]
mov dword [ebx + 0x30], eax
push 0
push ebx
mov edx, dword [0x7ce5fc]
push edx
mov ecx, dword [0x7ccc8c]
push ecx
push 0
push ebp
push esi
call sub.GDI32.DLL_GetDIBits
mov eax, dword [esp + 8]
push eax
push esi
call sub.GDI32.DLL_SelectObject
push ebp
call sub.GDI32.DLL_DeleteObject
push esi
call sub.GDI32.DLL_DeleteDC
push edi
call fcn.0045f384
push eax
call sub.USER32.DLL_ReleaseDC
jmp 0x473542
call fcn.00475dd0
mov ebx, eax
lea eax, [esp + 0x88]
mov dword [esp + 0xc], 0x7c
push eax
call fcn.0047b120
pop ecx
mov edx, dword [esp + 0x88]
add edx, dword [0x7ccc88]
mov dword [esp + 0x90], edx
mov ecx, dword [esp + 0x8c]
add ecx, dword [0x7ccc8c]
mov dword [esp + 0x94], ecx
push 0
push 0x11
lea eax, [esp + 0x14]
push eax
lea edx, [esp + 0x94]
push edx
push ebx
mov ecx, dword [ebx]
call dword [ecx + 0x64]
test eax, eax
je 0x473493
or eax, 0xffffffff
jmp 0x47354c
xor edx, edx
xor ecx, ecx
mov dword [esp + 0x98], edx
mov dword [esp + 0x9c], ecx
mov eax, dword [0x7ccc88]
mov edx, dword [0x7ccc8c]
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], edx
xor ecx, ecx
xor eax, eax
mov dword [esp], ecx
mov dword [esp + 4], eax
push 0
push 0
cmp dword [0x7ccc98], 0x10
jne 0x4734da
xor edx, edx
jmp 0x4734df
mov edx, 1
push edx
call fcn.00479dc0
add esp, 0xc
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [esp + 0xb4]
push ecx
push dword [esp + 0x24]
push dword [esp + 0x24]
push 0
push 0
push 0
push 0x7cc840
mov ecx, dword [esp + 0x54]
push ecx
mov edx, dword [esp + 0x6c]
push edx
push eax
mov eax, dword [0x7cddc8]
push eax
mov ecx, dword [0x7ce5fc]
push ecx
call fcn.0057426c
add esp, 0x4c
lea eax, [esp + 0x88]
push eax
push ebx
mov edx, dword [ebx]
call dword [edx + 0x80]
xor ecx, ecx
xor eax, eax
mov dword [0x7ce608], ecx
add esp, 0xe0
pop ebp
pop edi
pop esi
pop ebx
ret