Function at 0x14014c9d0
Capabilities:
Capture screenshot

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rsi
push r12
lea rbp, [rax - 0x2f]
sub rsp, 0xc0
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], r13
mov qword [rax - 0x30], r14
mov qword [rax - 0x38], r15
xor r13d, r13d
mov rdi, rcx
mov qword [rbp - 0x51], r13
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
mov rax, qword [rcx + 0x118]
movaps xmm8, xmm3
movaps xmm6, xmm2
movaps xmm7, xmm1
test rax, rax
jne 0x14014ca3c
cmp qword [rcx + 0x100], r13
je 0x14014ca43
mov rcx, qword [rcx + 0x100]
mov rax, qword [rcx]
call qword [rax + 0x3d0]
mov qword [rbp - 0x51], rax
mov r13, rax
mov rsi, qword [rbp + 0x5f]
xor r12d, r12d
mov rax, qword [rsi + 0x118]
mov qword [rbp - 0x49], r12
test rax, rax
jne 0x14014ca7c
cmp qword [rsi + 0x100], r12
je 0x14014ca83
mov rcx, qword [rsi + 0x100]
mov rax, qword [rcx]
call qword [rax + 0x3c8]
mov rcx, rax
call qword [sym.imp.USER32.dll_GetDC]
mov qword [rbp - 0x49], rax
mov r12, rax
mov rdx, qword [rdi + 0x70]
test rdx, rdx
je 0x14014cabb
cmp dword [rdi + 0xd0], 0
je 0x14014cabb
mov r8, qword [rdi]
mov rcx, rdi
call qword [r8 + 0x120]
mov rcx, qword [rdi + 0x70]
mov rax, qword [rcx]
call qword [rax + 0xa0]
mov rcx, r13
mov edx, dword [rax + 0x18]
call qword [sym.imp.GDI32.dll_SetTextColor]
cvttss2si r14d, dword [rbp + 0x67]
cvttss2si r15d, dword [rbp + 0x6f]
mov eax, dword [rbp + 0x77]
mov qword [rsp + 0xf8], rbx
mov ecx, 0x8800c6
mov dword [rbp + 0x47], r14d
mov dword [rbp + 0x3f], r15d
cvttss2si edx, xmm7
cvttss2si r8d, xmm6
movaps xmm7, xmmword [rsp + 0x80]
movaps xmm6, xmmword [rsp + 0x90]
mov dword [rbp - 0x55], edx
mov dword [rbp - 0x59], r8d
cmp eax, 5
jne 0x14014cb0e
mov ebx, 0xcc0020
jmp 0x14014cb8e
test eax, eax
jne 0x14014cb19
mov ebx, 0xff0062
jmp 0x14014cb8e
cmp eax, 0xf
jne 0x14014cb23
lea ebx, [rax + 0x33]
jmp 0x14014cb8e
cmp eax, 2
jne 0x14014cb2f
mov ebx, 0x550009
jmp 0x14014cb8e
cmp eax, 6
jne 0x14014cb3b
mov ebx, 0xc000ca
jmp 0x14014cb8e
cmp eax, 0xe
jne 0x14014cb47
mov ebx, 0xbb0226
jmp 0x14014cb8e
cmp eax, 0xb
jne 0x14014cb53
mov ebx, 0x330008
jmp 0x14014cb8e
cmp eax, 1
jne 0x14014cb5f
mov ebx, 0x660046
jmp 0x14014cb8e
cmp eax, 3
jne 0x14014cb6b
mov ebx, 0xbb0226
jmp 0x14014cb8e
cmp eax, 4
jne 0x14014cb77
mov ebx, 0x440328
jmp 0x14014cb8e
cmp eax, 0x10
jne 0x14014cb83
mov ebx, 0xee0086
jmp 0x14014cb8e
mov ebx, 0xcc0020
cmp eax, 0x11
cmove ebx, ecx
mov rcx, qword [rdi + 0x100]
test rcx, rcx
je 0x14014cbbd
cmp dword [rcx + 0xb8], 1
jne 0x14014cbbd
mov rcx, qword [rcx + 0x90]
lea r9, [rbp - 0x59]
mov rax, qword [rcx]
mov qword [rsp + 0x20], r9
lea r9, [rbp - 0x55]
call qword [rax + 0x28]
mov rcx, qword [rsi + 0x100]
test rcx, rcx
je 0x14014cbf2
cmp dword [rcx + 0xb8], 1
jne 0x14014cbf2
mov rcx, qword [rcx + 0x90]
lea rdx, [rbp + 0x3f]
lea r9, [rbp + 0x47]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rdx
mov r8d, r15d
mov edx, r14d
call qword [rax + 0x28]
cmp dword [rbp + 0x7f], 0
je 0x14014cdff
mov rax, qword [rsi + 0x108]
test rax, rax
je 0x14014cdff
cmp qword [rax + 0x30], 0
je 0x14014cdff
mov rcx, r12
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov rcx, r13
mov r14, rax
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov rcx, r13
cvttss2si esi, dword [rbp + 0x57]
cvttss2si r12d, xmm8
mov r15, rax
mov r8d, esi
mov edx, r12d
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov rcx, qword [rbp + 0x5f]
mov rcx, qword [rcx + 0x108]
mov r13, rax
mov rdx, qword [rcx + 0x30]
mov rcx, r14
mov rdx, qword [rdx + 0x10]
call qword [sym.imp.GDI32.dll_SelectObject]
mov rdx, r13
mov rcx, r15
call qword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [rbp - 0x59]
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], ecx
mov ecx, dword [rbp - 0x55]
mov r9d, r12d
mov dword [rsp + 0x30], ecx
mov rcx, qword [rbp - 0x51]
xor r8d, r8d
mov qword [rsp + 0x28], rcx
mov rcx, r15
xor edx, edx
mov dword [rsp + 0x20], esi
call qword [sym.imp.GDI32.dll_BitBlt]
mov eax, dword [rbp + 0x3f]
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 0x47]
mov dword [rsp + 0x30], eax
mov rax, qword [rbp - 0x49]
mov r9d, r12d
mov qword [rsp + 0x28], rax
xor r8d, r8d
xor edx, edx
mov rcx, r15
mov dword [rsp + 0x20], esi
call qword [sym.imp.GDI32.dll_BitBlt]
mov rbx, qword [rbp - 0x51]
mov edx, 0xffffff
mov rcx, rbx
call qword [sym.imp.GDI32.dll_SetBkColor]
xor edx, edx
mov rcx, rbx
mov edi, eax
call qword [sym.imp.GDI32.dll_SetTextColor]
mov ecx, dword [rbp + 0x3f]
mov dword [rsp + 0x40], 0x8800c6
mov dword [rsp + 0x38], ecx
mov ecx, dword [rbp + 0x47]
mov dword [rsp + 0x30], ecx
mov r9d, r12d
xor r8d, r8d
xor edx, edx
mov rcx, r15
mov qword [rsp + 0x28], r14
mov ebx, eax
mov dword [rsp + 0x20], esi
call qword [sym.imp.GDI32.dll_BitBlt]
mov rcx, qword [rbp - 0x51]
xor edx, edx
call qword [sym.imp.GDI32.dll_SetBkColor]
mov rcx, qword [rbp - 0x51]
mov edx, 0xffffff
call qword [sym.imp.GDI32.dll_SetTextColor]
mov eax, dword [rbp + 0x3f]
mov dword [rsp + 0x40], 0x8800c6
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 0x47]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r14
mov r8d, dword [rbp - 0x59]
mov edx, dword [rbp - 0x55]
mov rcx, qword [rbp - 0x51]
mov r9d, r12d
mov dword [rsp + 0x20], esi
call qword [sym.imp.GDI32.dll_BitBlt]
mov edx, edi
mov rdi, qword [rbp - 0x51]
mov rcx, rdi
call qword [sym.imp.GDI32.dll_SetBkColor]
mov edx, ebx
mov rcx, rdi
call qword [sym.imp.GDI32.dll_SetTextColor]
mov r8d, dword [rbp - 0x59]
mov edx, dword [rbp - 0x55]
mov dword [rsp + 0x40], 0xee0086
xor eax, eax
mov r9d, r12d
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], eax
mov rcx, rdi
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], esi
call qword [sym.imp.GDI32.dll_BitBlt]
xor edx, edx
mov rcx, r14
mov ebx, eax
call qword [sym.imp.GDI32.dll_SelectObject]
mov rcx, r14
call qword [sym.imp.GDI32.dll_DeleteDC]
xor edx, edx
mov rcx, r15
call qword [sym.imp.GDI32.dll_SelectObject]
mov rcx, r15
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rcx, r13
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rdi, qword [rbp + 0x37]
mov rsi, qword [rbp + 0x5f]
mov r12, qword [rbp - 0x49]
jmp 0x14014ce36
mov eax, dword [rbp + 0x3f]
cvttss2si ecx, dword [rbp + 0x57]
mov r8d, dword [rbp - 0x59]
mov edx, dword [rbp - 0x55]
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x38], eax
cvttss2si r9d, xmm8
mov eax, dword [rbp + 0x47]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], ecx
mov rcx, r13
call qword [sym.imp.GDI32.dll_BitBlt]
mov ebx, eax
cmp qword [rdi + 0x118], 0
movaps xmm8, xmmword [rsp + 0x70]
mov r15, qword [rsp + 0xa0]
mov r14, qword [rsp + 0xa8]
mov r13, qword [rsp + 0xb0]
jne 0x14014ce78
cmp qword [rdi + 0x100], 0
je 0x14014ce78
mov rcx, qword [rdi + 0x100]
mov rax, qword [rcx]
call qword [rax + 0x3d8]
cmp qword [rsi + 0x118], 0
mov rdi, qword [rsp + 0xb8]
jne 0x14014ceb0
cmp qword [rsi + 0x100], 0
je 0x14014ceb0
mov rcx, qword [rsi + 0x100]
mov rax, qword [rcx]
call qword [rax + 0x3c8]
mov rdx, r12
mov rcx, rax
call qword [sym.imp.USER32.dll_ReleaseDC]
mov eax, ebx
mov rbx, qword [rsp + 0xf8]
add rsp, 0xc0
pop r12
pop rsi
pop rbp
ret