Function at 0x1400ac760
Capabilities:
Capture screenshot

Disassembly:
mov rax, rsp
push rbp
push rsi
push r13
push r14
push r15
sub rsp, 0xc0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x14018db80]
xor rax, rsp
mov qword [rsp + 0x98], rax
cvttss2si r15d, dword [0x14018d9d0]
lea rcx, [rsp + 0x58]
call fcn.1400abcf0
lea rcx, [rsp + 0x58]
call fcn.1400abcf0
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetDC]
mov r8d, r15d
mov edx, r15d
mov rcx, rax
mov qword [rsp + 0x58], rax
mov r14, rax
call qword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov ecx, dword [0x140194f8c]
mov rbp, rax
imul ecx, dword [0x140194f88]
mov qword [rsp + 0x68], rax
lea ecx, [rcx + rcx*4]
movsxd rcx, ecx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rcx, r14
mov qword [0x140194d88], rax
call qword [sym.imp.GDI32.dll_CreateCompatibleDC]
xor r13d, r13d
mov dword [rsp + 0x70], Ordinal_41
mov rsi, rax
mov qword [rsp + 0x60], rax
mov eax, dword [0x140194f88]
xorps xmm0, xmm0
cdq
mov qword [rsp + 0x7c], 0x200001
sub eax, edx
mov dword [rsp + 0x74], r15d
sar eax, 1
movdqu xmmword [rsp + 0x88], xmm0
mov dword [rsp + 0x84], r13d
movd xmm6, eax
mov eax, dword [0x140194f8c]
cdq
sub eax, edx
sar eax, 1
cvtdq2pd xmm6, xmm6
movd xmm7, eax
mov eax, r15d
neg eax
cmp byte [reloc.WS2_32.dll_accept], r13b
cvtdq2pd xmm7, xmm7
mov dword [rsp + 0x78], eax
je 0x1400acae8
mov qword [rsp + 0xf0], rbx
mov qword [rsp + 0xf8], rdi
movzx edi, byte [rsp + 0x50]
mov qword [rsp + 0x100], r12
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [0x140194d9f], 0
je 0x1400acab8
mov rdx, rbp
mov rcx, rsi
call qword [sym.imp.GDI32.dll_SelectObject]
mov dword [rsp + 0x40], 0xcc0020
movaps xmm0, xmm7
mov rbx, rax
movaps xmm1, xmm6
mov eax, r15d
mov r9d, r15d
cdq
xor r8d, r8d
sub eax, edx
sar eax, 1
movd xmm2, eax
cvtdq2pd xmm2, xmm2
subsd xmm0, xmm2
subsd xmm1, xmm2
cvttsd2si edx, xmm0
cvttsd2si ecx, xmm1
mov dword [rsp + 0x38], edx
xor edx, edx
mov dword [rsp + 0x30], ecx
mov rcx, rsi
mov qword [rsp + 0x28], r14
mov dword [rsp + 0x20], r15d
call qword [sym.imp.GDI32.dll_BitBlt]
mov rdx, rbx
mov rcx, rsi
call qword [sym.imp.GDI32.dll_SelectObject]
lea rax, [rsp + 0x70]
mov dword [rsp + 0x30], r13d
mov qword [rsp + 0x28], rax
mov r9d, r15d
mov rax, qword [0x140194d88]
xor r8d, r8d
mov rdx, rbp
mov qword [rsp + 0x20], rax
mov rcx, rsi
call qword [sym.imp.GDI32.dll_GetDIBits]
mov r14d, r13d
test r15d, r15d
jle 0x1400aca9c
mov r11d, dword [0x140194dfc]
lea r12d, [r15*4]
mov ebp, r13d
mov r13, qword [0x140194d88]
nop word [rax + rax]
test r12d, r12d
jle 0x1400aca8d
movsxd rax, ebp
lea r10, [r13 + 2]
mov rbx, 0xfffffffffffffffe
movsxd rsi, r12d
lea rax, [rax*4]
add r10, rax
sub rbx, rax
sub rbx, r13
nop dword [rax + rax]
movzx r8d, byte [r10 - 2]
movzx ecx, byte [r10 - 1]
movzx edx, byte [r10]
cmp r11d, 1
jbe 0x1400aca0e
cmp r11d, 2
jne 0x1400ac9dc
lea eax, [rdx - 0xdd]
cmp eax, 0x21
ja 0x1400aca79
lea eax, [rcx - 0x3d]
cmp eax, 0x1c
ja 0x1400aca79
lea eax, [r8 - 0x3d]
cmp eax, 0x1c
ja 0x1400aca79
mov dil, 1
mov al, 1
jmp 0x1400aca9e
cmp r11d, 3
jne 0x1400aca07
lea eax, [rdx - 0xf1]
cmp eax, 0xd
ja 0x1400aca79
lea eax, [rcx - 0xf1]
cmp eax, 0xd
ja 0x1400aca79
lea eax, [r8 - 0x3d]
cmp eax, 0x11
jbe 0x1400ac9d2
jmp 0x1400aca79
test dil, dil
jne 0x1400ac9d5
jmp 0x1400aca7c
cmp ecx, 0xbe
jae 0x1400aca79
mov eax, edx
sub eax, r8d
mov r9d, eax
neg r9d
cmovs r9d, eax
cmp ecx, 0x8c
jb 0x1400aca51
cmp r9d, 8
jg 0x1400aca79
mov eax, edx
sub eax, ecx
cmp eax, 0x32
jl 0x1400aca79
mov eax, r8d
sub eax, ecx
cmp eax, 0x32
jl 0x1400aca79
cmp edx, 0x69
jb 0x1400aca79
cmp r8d, 0x69
jmp 0x1400aca73
cmp r9d, 0xd
jg 0x1400aca79
mov eax, edx
sub eax, ecx
cmp eax, 0x3c
jl 0x1400aca79
mov eax, r8d
sub eax, ecx
cmp eax, 0x3c
jl 0x1400aca79
cmp edx, 0x6e
jb 0x1400aca79
cmp r8d, 0x64
jae 0x1400ac9d2
xor dil, dil
add r10, 4
lea rax, [rbx + r10]
cmp rax, rsi
jl 0x1400ac990
inc r14d
add ebp, r15d
cmp r14d, r15d
jl 0x1400ac960
xor al, al
mov rsi, qword [rsp + 0x60]
xor r13d, r13d
mov rbp, qword [rsp + 0x68]
mov r14, qword [rsp + 0x58]
mov byte [0x140194d98], al
jmp 0x1400acac3
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [reloc.WS2_32.dll_accept], 0
jne 0x1400ac887
mov r12, qword [rsp + 0x100]
mov rdi, qword [rsp + 0xf8]
mov rbx, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x98]
xor rcx, rsp
call fcn.14012def0
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xa0]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop rsi
pop rbp
ret