Function at 0x40b2e9
Capabilities:
Capture screenshot
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff38
push ebx
push edx
push esi
mov dword [ebp - 0xc8], 0
mov eax, dword [ebp + 0x10]
push dword [eax + 4]
push dword [eax]
call fcn.0040dee3
mov ebx, eax
mov edx, dword [ebx]
push edx
lea eax, [ebp - 0xc0]
push eax
push ebx
call fcn.0040f9d0
push dword [ebp - 0x70]
push 6
call fcn.0040dfc5
mov esi, eax
mov eax, dword [0x4192f1]
cmp dword [ebp + 0xc], eax
jne 0x40b35b
cmp dword [0x419d60], 0
jne 0x40b35b
cmp dword [esi + 0x18], 0
je 0x40b352
push dword [esi + 0x18]
call sub.USER32.dll_DestroyWindow
mov dword [esi + 0x18], 0
mov dword [ebp - 0x1c], 1
jmp 0x40b362
mov dword [ebp - 0x1c], 0
push dword [ebp - 0x90]
call sub.GDI32.dll_CreateSolidBrush
mov dword [ebp - 0x24], eax
mov dword [ebp - 0xc], 0x40002000
mov dword [ebp - 0x10], 0
cmp dword [ebp - 0xa4], 1
jne 0x40b38e
or dword [ebp - 0xc], 0x8000
cmp dword [ebp - 0xa0], 0
jne 0x40b3a0
or dword [ebp - 0xc], 0x100
jmp 0x40b3b9
cmp dword [ebp - 0xa0], 1
jne 0x40b3b2
or dword [ebp - 0xc], 0x200
jmp 0x40b3b9
or dword [ebp - 0xc], 0x300
cmp dword [ebp - 0x98], 0
jne 0x40b3cb
or dword [ebp - 0xc], 0x400
jmp 0x40b3e4
cmp dword [ebp - 0x98], 1
jne 0x40b3dd
or dword [ebp - 0xc], 0x800
jmp 0x40b3e4
or dword [ebp - 0xc], 0xc00
cmp dword [ebp - 0xb8], 2
je 0x40b3f6
cmp dword [ebp - 0xb8], 1
jne 0x40b403
cmp dword [ebp - 0x9c], 1
jne 0x40b403
or dword [ebp - 0xc], 0x20
cmp dword [ebp - 0xb8], 2
jne 0x40b412
or dword [ebp - 0xc], 4
jmp 0x40b428
cmp dword [ebp - 0xb8], 1
jne 0x40b421
or dword [ebp - 0xc], 2
jmp 0x40b428
mov dword [ebp - 0xc], 0x4000200b
push 0
push dword [section..data]
push dword [ebp - 0x70]
push dword [0x419004]
push dword [ebp - 0xa8]
push dword [ebp - 0xac]
push dword [ebp - 0xb0]
push dword [ebp - 0xb4]
push dword [ebp - 0xc]
push 0
push str.BUTTON
push dword [ebp - 0x10]
call sub.USER32.dll_CreateWindowExA
mov dword [ebp - 4], eax
push dword [ebp - 0x94]
push dword [ebp - 0x68]
push 0
call fcn.0040505f
mov dword [ebp - 0xc4], eax
push 0
push dword [ebp - 0xc4]
push 0x30
push dword [ebp - 4]
call sub.USER32.dll_SendMessageA
cmp dword [ebp - 0xb8], 0
jne 0x40b4ac
push 0x40b996
push 0xfffffffffffffffc
push dword [ebp - 4]
call sub.USER32.dll_SetWindowLongA
mov dword [ebp - 0xc8], eax
push dword [ebp - 0x90]
pop dword [esi + 0xc]
push dword [ebp - 0x8c]
pop dword [esi + 0x14]
push dword [ebp - 0x24]
pop dword [esi]
push dword [ebp - 4]
pop dword [esi + 0x18]
push dword [ebp - 0xc4]
pop dword [esi + 4]
push dword [ebp - 0xc8]
pop dword [esi + 0x24]
push esi
push 0xffffffffffffffeb
push dword [ebp - 4]
call sub.USER32.dll_SetWindowLongA
push 1
push dword [ebp - 4]
call sub.USER32.dll_ShowWindow
push dword [ebp - 4]
call sub.USER32.dll_UpdateWindow
lea eax, [ebp - 0x40]
push eax
push dword [ebp - 4]
call sub.USER32.dll_GetWindowRect
push dword [ebp - 4]
call sub.USER32.dll_GetDC
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
call sub.GDI32.dll_CreateCompatibleDC
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x40]
sub dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x3c]
sub dword [ebp - 0x34], eax
push dword [ebp - 0x34]
push dword [ebp - 0x38]
push dword [ebp - 0x28]
call sub.GDI32.dll_CreateCompatibleBitmap
mov dword [ebp - 0x2c], eax
push dword [ebp - 0x2c]
push dword [ebp - 8]
call sub.GDI32.dll_SelectObject
mov dword [ebp - 0x30], eax
push 0
push dword [ebp - 0x88]
call fcn.00404f76
mov dword [ebp - 0x18], eax
cmp dword [esi + 0x20], 0
jne 0x40b563
push dword [ebp - 0x60]
pop dword [ebp - 0x14]
jmp 0x40b569
push dword [esi + 0x1c]
pop dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jne 0x40b578
mov dword [ebp - 0x14], 1
jmp 0x40b57f
mov dword [ebp - 0x14], 0
push 0
push dword [ebp - 0x14]
push 0xf1
push dword [ebp - 4]
call sub.USER32.dll_SendMessageA
push dword [ebp - 0x18]
push dword [ebp - 4]
call sub.USER32.dll_SetWindowTextA
push 0xe
push dword [ebp - 8]
push 0x317
push dword [ebp - 4]
call sub.USER32.dll_SendMessageA
push 0xcc0020
push 0
push 0
push dword [ebp - 8]
push dword [ebp - 0x34]
push dword [ebp - 0x38]
push dword [ebp - 0xb0]
push dword [ebp - 0xb4]
push dword [ebp + 8]
call sub.GDI32.dll_BitBlt
push dword [ebp - 0x30]
push dword [ebp - 8]
call sub.GDI32.dll_SelectObject
push dword [ebp - 0x2c]
call sub.GDI32.dll_DeleteObject
push dword [ebp - 8]
call sub.GDI32.dll_DeleteDC
push dword [ebp - 0x28]
push dword [ebp - 4]
call sub.USER32.dll_ReleaseDC
cmp dword [ebp - 0x1c], 0
jne 0x40b65d
mov dword [esi + 0xc], 0
mov dword [esi + 0x14], 0
mov dword [esi], 0
mov dword [esi + 0x18], 0
mov dword [esi + 4], 0
mov dword [esi + 0x24], 0
push dword [ebp - 0x24]
call sub.GDI32.dll_DeleteObject
push dword [ebp - 0xc4]
call sub.GDI32.dll_DeleteObject
cmp dword [ebp - 0xb8], 0
jne 0x40b655
push dword [ebp - 0xc8]
push 0xfffffffffffffffc
push dword [ebp - 4]
call sub.USER32.dll_SetWindowLongA
push dword [ebp - 4]
call sub.USER32.dll_DestroyWindow
pop esi
pop edx
pop ebx
leave
ret 0xc