Function at 0x18009ff90
Capabilities:
Capture screenshot

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xd0
mov rax, qword [0x18021e0b0]
xor rax, rsp
mov qword [rsp + 0xc8], rax
xor edx, edx
lea rcx, [0x1801fe774]
call qword [sym.imp.USER32.dll_FindWindowA]
mov rbx, rax
test rax, rax
jne 0x18009ffe7
movabs rax, 0x100000001
jmp 0x1800a0231
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindowDC]
mov r15, rax
mov qword [rsp + 0x60], rax
lea rdx, [rsp + 0xb8]
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetClientRect]
mov ebx, dword [0x180222bc0]
mov esi, dword [0x180222bc4]
mov ebp, dword [0x180222bc8]
mov edi, dword [0x180222bcc]
mov rcx, r15
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov r14, rax
mov qword [rsp + 0x50], rax
mov r12d, edi
sub r12d, esi
sub ebp, ebx
mov r8d, r12d
mov edx, ebp
mov rcx, r15
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov r13, rax
mov qword [rsp + 0x58], rax
mov rdx, rax
mov rcx, r14
call qword [sym.imp.GDI32.dll_SelectObject]
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], esi
mov dword [rsp + 0x30], ebx
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], r12d
mov r9d, ebp
xor r8d, r8d
xor edx, edx
mov rcx, r14
call qword [sym.imp.GDI32.dll_BitBlt]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x9c], xmm0
xor ecx, ecx
mov qword [rsp + 0xac], rcx
mov dword [rsp + 0x88], Ordinal_41
mov dword [rsp + 0x8c], ebp
sub esi, edi
mov dword [rsp + 0x90], esi
mov qword [rsp + 0x94], 0x200001
mov eax, r12d
imul eax, ebp
shl eax, 2
movsxd rbx, eax
movdqu xmmword [rsp + 0x70], xmm0
mov r15d, ecx
mov qword [rsp + 0x80], rcx
test eax, eax
je 0x1800a0119
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.180017cc0
mov r8, rbx
xor edx, edx
mov rdi, qword [rsp + 0x70]
mov rcx, rdi
call fcn.180145b10
lea rax, [rbx + rdi]
mov qword [rsp + 0x78], rax
mov r15, qword [rsp + 0x80]
xor ecx, ecx
jmp 0x1800a011e
mov rdi, qword [rsp + 0x70]
mov dword [rsp + 0x30], ecx
lea rax, [rsp + 0x88]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
mov r9d, r12d
xor r8d, r8d
mov rdx, r13
mov rcx, r14
call qword [sym.imp.GDI32.dll_GetDIBits]
xor eax, eax
mov qword [rsp + 0x68], rax
mov esi, dword [0x180222f98]
cmp esi, r12d
jge 0x1800a01d2
mov r11d, ebp
imul r11d, esi
mov r13d, dword [0x180222f9c]
mov r9d, dword [0x18021ed20]
mov r10, qword [0x18021ed1c]
mov r14d, dword [0x18021ed18]
nop dword [rax + rax]
mov rbx, r13
cmp r13d, ebp
jge 0x1800a01be
lea ecx, [r11 + r13]
shl ecx, 2
nop
movsxd rax, ecx
movzx edx, byte [rax + rdi]
movzx r8d, byte [rax + rdi + 2]
cmp r8d, r14d
jne 0x1800a01b5
movzx eax, byte [rax + rdi + 1]
cmp eax, r10d
jne 0x1800a01b5
cmp edx, r9d
je 0x1800a0262
inc ebx
add ecx, 4
cmp ebx, ebp
jl 0x1800a0190
inc esi
add r11d, ebp
cmp esi, r12d
jl 0x1800a0180
mov r14, qword [rsp + 0x50]
mov r13, qword [rsp + 0x58]
mov rcx, r13
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, r14
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rdx, qword [rsp + 0x60]
xor ecx, ecx
call qword [sym.imp.USER32.dll_ReleaseDC]
mov rbx, qword [rsp + 0x68]
test rdi, rdi
je 0x1800a022e
sub r15, rdi
mov rax, rdi
cmp r15, 0x1000
jb 0x1800a0223
add r15, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a02b4
mov rdx, r15
mov rcx, rdi
call fcn.180142d20
mov rax, rbx
mov rcx, qword [rsp + 0xc8]
xor rcx, rsp
call fcn.180142d00
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
sub r8d, r14d
mov eax, r8d
cdq
xor eax, edx
sub eax, edx
mov edx, eax
call fcn.18000f690
mov rcx, rax
lea rdx, [0x1801c3214]
call fcn.180085ea0
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rdx, qword [rsp + 0x60]
xor ecx, ecx
call qword [sym.imp.USER32.dll_ReleaseDC]
shl rbx, 0x20
mov eax, esi
or rbx, rax
jmp 0x1800a01f6
call fcn.180151d10
int3