Function at 0x140057510
Capabilities:
Capture screenshot

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x148]
sub rsp, 0x248
movaps xmmword [rsp + 0x230], xmm6
xor r13d, r13d
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
lea rcx, [rbp + 0x190]
call fcn.1400415e0
movabs rdx, 0x7fffffffffffffff
lea edi, [r13 + 1]
movabs r9, 0x7fffffffa697d0ff
mov r8d, 0xff
mov rax, qword [rbp + 0x190]
cmp rax, r9
je 0x14005759c
mov ecx, edi
cmovl ecx, r8d
test cl, cl
jns 0x14005759c
add rax, 0x59682f00
mov qword [rbp + 0x190], rax
jmp 0x1400575a3
mov qword [rbp + 0x190], rdx
lea rcx, [rbp + 0x190]
call fcn.14006fdc0
cmp byte [0x140131a5e], r13b
je 0x140057b5e
movsd xmm6, qword [0x14011c448]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetDC]
mov r14, rax
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ebx, eax
mov ecx, edi
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov edi, eax
mov rcx, r14
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov rsi, rax
mov r8d, edi
mov edx, ebx
mov rcx, r14
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov r15, rax
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.GDI32.dll_SelectObject]
mov r12, rax
mov dword [rsp + 0x40], 0xcc0020
mov dword [rsp + 0x38], r13d
mov dword [rsp + 0x30], r13d
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], edi
mov r9d, ebx
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call qword [sym.imp.GDI32.dll_BitBlt]
mov dword [rsp + 0x68], Ordinal_46
mov dword [rsp + 0x6c], ebx
mov ecx, edi
neg ecx
mov dword [rsp + 0x70], ecx
mov qword [rsp + 0x74], 0x180001
mov qword [rsp + 0x7c], r13
mov qword [rbp - 0x7c], r13
mov dword [rbp - 0x74], r13d
mov dword [rbp + 0x198], ebx
mov dword [rbp + 0x19c], edi
mov r8d, reloc.WS2_32.dll_recv
mov rdx, qword [rbp + 0x198]
lea rcx, [rbp + 0x10]
call qword [sym.imp.opencv_world490.dll_public:_void___cdecl_cv::Mat::constructor_class_cv::Size__int___int____ptr64]
nop
mov dword [rsp + 0x30], r13d
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x20]
mov qword [rsp + 0x20], rax
mov r9d, edi
xor r8d, r8d
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.GDI32.dll_GetDIBits]
mov edi, 1
mov r8d, edi
lea rdx, str.data_stone.png
lea rcx, [rbp + 0xd0]
call qword [sym.imp.opencv_world490.dll_class_cv::Mat___cdecl_cv::imread_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const____ptr64__int_]
nop
lea rcx, [rbp + 0xd0]
call qword [sym.imp.opencv_world490.dll_public:_bool___cdecl_cv::Mat::empty_void_const___ptr64]
test al, al
jne 0x1400576ef
lea rcx, [rbp + 0x10]
call qword [sym.imp.opencv_world490.dll_public:_bool___cdecl_cv::Mat::empty_void_const___ptr64]
test al, al
je 0x14005770d
xor r9d, r9d
lea r8, [0x140110b18]
lea rdx, [0x140111ee0]
mov rcx, qword [0x140131b08]
call qword [sym.imp.USER32.dll_MessageBoxW]
lea rcx, [rbp + 0x70]
call qword [sym.imp.opencv_world490.dll_public:_void___cdecl_cv::Mat::constructor_void____ptr64]
nop
call qword [sym.imp.opencv_world490.dll_class_cv::_InputOutputArray_const____ptr64___cdecl_cv::noArray_void_]
mov qword [rbp - 0x20], r13
mov dword [rbp - 0x30], 0x2010000
lea rcx, [rbp + 0x70]
mov qword [rbp - 0x28], rcx
mov qword [rbp - 8], r13
mov dword [rbp - 0x18], 0x1010000
lea rcx, [rbp + 0xd0]
mov qword [rbp - 0x10], rcx
mov qword [rsp + 0x60], r13
mov dword [rsp + 0x50], 0x1010000
lea rcx, [rbp + 0x10]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x20], rax
mov r9d, 5
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x18]
lea rcx, [rsp + 0x50]
call qword [sym.imp.opencv_world490.dll_void___cdecl_cv::matchTemplate_class_cv::_InputArray_const____ptr64__class_cv::_InputArray_const____ptr64__class_cv::_OutputArray_const____ptr64__int__class_cv::_InputArray_const____ptr64_]
mov qword [rbp + 0x1a0], r13
mov qword [rbp + 0x190], r13
call qword [sym.imp.opencv_world490.dll_class_cv::_InputOutputArray_const____ptr64___cdecl_cv::noArray_void_]
mov qword [rsp + 0x60], r13
mov dword [rsp + 0x50], 0x1010000
lea rcx, [rbp + 0x70]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x190]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x1a0]
lea r8, [rbp - 0x70]
lea rdx, [rbp]
lea rcx, [rsp + 0x50]
call qword [sym.imp.opencv_world490.dll_void___cdecl_cv::minMaxLoc_class_cv::_InputArray_const____ptr64__double____ptr64__double____ptr64__class_cv::Point__int_____ptr64__class_cv::Point__int_____ptr64__class_cv::_InputArray_const____ptr64_]
mov rdx, r12
mov rcx, rsi
call qword [sym.imp.GDI32.dll_SelectObject]
mov rcx, r15
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, r14
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rcx, rsi
call qword [sym.imp.GDI32.dll_DeleteDC]
movsd xmm0, qword [rbp - 0x70]
comisd xmm0, xmm6
jbe 0x140057b09
cmp byte [0x140131b47], 0
je 0x14005781e
lea rdx, [0x140111f28]
mov r8d, listen
jmp 0x14005782b
lea rdx, [0x140111f38]
mov r8d, reloc.WS2_32.dll_setsockopt
lea rcx, [0x140130860]
call fcn.14006c8d0
mov edx, dword [rbp + 0x194]
mov ecx, dword [rbp + 0x190]
call qword [sym.imp.USER32.dll_SetCursorPos]
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
lea rcx, [rbp - 0x68]
call fcn.1400415e0
mov rax, qword [rbp - 0x68]
movabs rsi, 0x7fffffffee1e5cff
mov r14d, 0xff
cmp rax, rsi
je 0x1400578a4
mov ecx, edi
cmovl ecx, r14d
test cl, cl
jns 0x1400578a4
add rax, 0x11e1a300
mov qword [rbp + 0x1a8], rax
movabs rbx, 0x7fffffffffffffff
jmp 0x1400578b5
movabs rbx, 0x7fffffffffffffff
mov qword [rbp + 0x1a8], rbx
lea rcx, [rbp + 0x1a8]
call fcn.14006fdc0
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 2]
call qword [sym.imp.USER32.dll_mouse_event]
lea rcx, [rbp - 0x60]
call fcn.1400415e0
mov rax, qword [rbp - 0x60]
cmp rax, rsi
je 0x140057902
mov ecx, edi
cmovl ecx, r14d
test cl, cl
jns 0x140057902
add rax, 0x11e1a300
mov qword [rbp + 0x1a8], rax
jmp 0x140057909
mov qword [rbp + 0x1a8], rbx
lea rcx, [rbp + 0x1a8]
call fcn.14006fdc0
mov edx, dword [rbp + 0x194]
add edx, 0xfffffff6
mov ecx, dword [rbp + 0x190]
add ecx, 0xfffffe70
call qword [sym.imp.USER32.dll_SetCursorPos]
lea rcx, [rbp - 0x58]
call fcn.1400415e0
mov rax, qword [rbp - 0x58]
movabs rdx, 0x7fffffffdc3cb9ff
cmp rax, rdx
je 0x140057965
mov ecx, edi
cmovl ecx, r14d
test cl, cl
jns 0x140057965
add rax, 0x23c34600
mov qword [rbp + 0x1a8], rax
jmp 0x14005796c
mov qword [rbp + 0x1a8], rbx
lea rcx, [rbp + 0x1a8]
call fcn.14006fdc0
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
lea rcx, [rbp - 0x50]
call fcn.1400415e0
mov rax, qword [rbp - 0x50]
cmp rax, rsi
je 0x1400579b9
mov ecx, edi
cmovl ecx, r14d
test cl, cl
jns 0x1400579b9
add rax, 0x11e1a300
mov qword [rbp + 0x1a8], rax
jmp 0x1400579c0
mov qword [rbp + 0x1a8], rbx
lea rcx, [rbp + 0x1a8]
call fcn.14006fdc0
mov edx, 0x160
mov ecx, 0x218
call qword [sym.imp.USER32.dll_SetCursorPos]
lea rcx, [rbp - 0x48]
call fcn.1400415e0
mov rax, qword [rbp - 0x48]
cmp rax, rsi
je 0x140057a07
mov ecx, edi
cmovl ecx, r14d
test cl, cl
jns 0x140057a07
add rax, 0x11e1a300
mov qword [rbp + 0x1a8], rax
jmp 0x140057a0e
mov qword [rbp + 0x1a8], rbx
lea rcx, [rbp + 0x1a8]
call fcn.14006fdc0
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 2]
call qword [sym.imp.USER32.dll_mouse_event]
lea rcx, [rbp - 0x40]
call fcn.1400415e0
mov rax, qword [rbp - 0x40]
movabs rdx, 0x7ffffffffa0a1eff
cmp rax, rdx
je 0x140057a65
mov ecx, edi
cmovl ecx, r14d
test cl, cl
jns 0x140057a65
add rax, 0x5f5e100
mov qword [rbp + 0x1a8], rax
jmp 0x140057a6c
mov qword [rbp + 0x1a8], rbx
lea rcx, [rbp + 0x1a8]
call fcn.14006fdc0
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
lea rcx, [rbp - 0x38]
call fcn.1400415e0
mov rax, qword [rbp - 0x38]
movabs rdx, 0x7fffffffa697d0ff
cmp rax, rdx
je 0x140057ac3
mov ecx, edi
cmovl ecx, r14d
test cl, cl
jns 0x140057ac3
add rax, 0x59682f00
mov qword [rbp + 0x1a8], rax
jmp 0x140057aca
mov qword [rbp + 0x1a8], rbx
lea rcx, [rbp + 0x1a8]
call fcn.14006fdc0
nop
lea rcx, [rbp + 0x70]
call qword [sym.imp.opencv_world490.dll_public:_void___cdecl_cv::Mat::destructor_void____ptr64]
nop
lea rcx, [rbp + 0xd0]
call qword [sym.imp.opencv_world490.dll_public:_void___cdecl_cv::Mat::destructor_void____ptr64]
nop
lea rcx, [rbp + 0x10]
call qword [sym.imp.opencv_world490.dll_public:_void___cdecl_cv::Mat::destructor_void____ptr64]
cmp byte [0x140131a5e], 0
jne 0x1400575c4
jmp 0x140057b5e
lea rcx, [0x140130860]
cmp byte [0x140131b47], 0
je 0x140057b28
mov r8d, Ordinal_46
lea rdx, [0x140111f50]
jmp 0x140057b35
mov r8d, reloc.WLDAP32.dll_Ordinal_46
lea rdx, [0x140111f80]
call fcn.14006c8d0
nop
lea rcx, [rbp + 0x70]
call qword [sym.imp.opencv_world490.dll_public:_void___cdecl_cv::Mat::destructor_void____ptr64]
nop
lea rcx, [rbp + 0xd0]
call qword [sym.imp.opencv_world490.dll_public:_void___cdecl_cv::Mat::destructor_void____ptr64]
nop
lea rcx, [rbp + 0x10]
call qword [sym.imp.opencv_world490.dll_public:_void___cdecl_cv::Mat::destructor_void____ptr64]
movaps xmm6, xmmword [rsp + 0x230]
add rsp, 0x248
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret