Function at 0x140015da0
Capabilities:
Capture screenshot

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
mov qword [rbp + 7], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov rax, qword [0x14027eb40]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov rbx, rdx
mov r14, rcx
lea r15, [rcx + 0x1b0]
xor esi, esi
test r15, r15
je 0x140015df5
cmp qword [r15 + 8], rsi
je 0x140015df5
mov rcx, r15
call fcn.14003443c
mov rcx, r14
call fcn.140015bb4
mov r13, rax
test rax, rax
je 0x140016007
test rbx, rbx
je 0x140015ffb
cmp rbx, r14
je 0x140015ffb
xorps xmm0, xmm0
movdqu xmmword [rbp + 0xf], xmm0
lea rdx, [rbp + 0xf]
mov rcx, qword [rbx + 0x40]
call qword [sym.imp.USER32.dll_GetClientRect]
test r14, r14
mov rdx, rsi
je 0x140015e3d
mov rdx, qword [r14 + 0x40]
mov r9d, 2
lea r8, [rbp + 0xf]
mov rcx, qword [rbx + 0x40]
call qword [sym.imp.USER32.dll_MapWindowPoints]
lea rcx, [rbp - 0x39]
call fcn.14003377c
nop
lea rcx, [rbp - 0x19]
call fcn.14003377c
nop
mov rcx, qword [r14 + 0x40]
call qword [sym.imp.USER32.dll_GetDC]
mov rcx, rax
call fcn.140034588
test rax, rax
mov rcx, rsi
je 0x140015e83
mov rcx, qword [rax + 8]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov rdx, rax
lea rcx, [rbp - 0x39]
call fcn.1400342fc
test eax, eax
je 0x140015fe6
mov rcx, qword [r14 + 0x40]
call qword [sym.imp.USER32.dll_GetDC]
mov rcx, rax
call fcn.140034588
test rax, rax
mov rcx, rsi
je 0x140015ebb
mov rcx, qword [rax + 8]
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov rdx, rax
lea rcx, [rbp - 0x19]
call fcn.1400342fc
test eax, eax
je 0x140015fe6
mov qword [rbp - 0x41], rsi
lea r12, vtable.CBitmap.0
mov qword [rbp - 0x49], r12
mov edi, dword [rbp + 0x1b]
sub edi, dword [rbp + 0x13]
mov ebx, dword [rbp + 0x17]
sub ebx, dword [rbp + 0xf]
mov rcx, qword [r14 + 0x40]
call qword [sym.imp.USER32.dll_GetDC]
mov rcx, rax
call fcn.140034588
mov r8d, edi
mov edx, ebx
mov rcx, qword [rax + 8]
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov rdx, rax
lea rcx, [rbp - 0x49]
call fcn.140034348
test eax, eax
je 0x140015fc5
mov rdx, qword [r13 + 8]
mov rcx, qword [rbp - 0x31]
call fcn.140034b88
mov rdi, rax
mov rdx, qword [rbp - 0x41]
mov rcx, qword [rbp - 0x11]
call fcn.140034b88
mov rbx, rax
mov r8d, dword [rbp + 0x1b]
mov edx, dword [rbp + 0x13]
sub r8d, edx
mov r9d, dword [rbp + 0x17]
mov ecx, dword [rbp + 0xf]
sub r9d, ecx
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], edx
mov dword [rsp + 0x30], ecx
mov rcx, qword [rbp - 0x31]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
xor r8d, r8d
xor edx, edx
mov rcx, qword [rbp - 0x11]
call qword [sym.imp.GDI32.dll_BitBlt]
test rdi, rdi
mov rdx, rsi
je 0x140015f92
mov rdx, qword [rdi + 8]
mov rcx, qword [rbp - 0x31]
call fcn.140034b88
test rbx, rbx
mov rdx, rsi
je 0x140015fa7
mov rdx, qword [rbx + 8]
mov rcx, qword [rbp - 0x11]
call fcn.140034b88
mov rcx, qword [rbp - 0x41]
call qword [sym.imp.GDI32.dll_CreatePatternBrush]
mov rdx, rax
mov rcx, r15
call fcn.140034348
lea rcx, [rbp - 0x39]
call fcn.140034414
lea rcx, [rbp - 0x19]
call fcn.140034414
nop
mov qword [rbp - 0x49], r12
lea rcx, [rbp - 0x49]
call fcn.14001589c
nop
lea rcx, [rbp - 0x19]
call fcn.1400338f4
nop
lea rcx, [rbp - 0x39]
call fcn.1400338f4
jmp 0x14001601f
mov rcx, qword [rax + 8]
call qword [sym.imp.GDI32.dll_CreatePatternBrush]
jmp 0x140016014
mov ecx, dword [r14 + 0x194]
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
mov rdx, rax
mov rcx, r15
call fcn.140034348
test r15, r15
je 0x140016028
mov rsi, qword [r15 + 8]
mov rax, rsi
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.140199450
mov rbx, qword [rsp + 0x110]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret