Function at 0x140002310
Capabilities:
Manipulate console buffer

Disassembly:
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xd0
mov rax, qword [0x140032040]
xor rax, rsp
mov qword [rbp - 0x19], rax
lea rdx, str.BlueStacks_App_Player
xor ecx, ecx
call qword [sym.imp.USER32.dll_FindWindowA]
mov qword [0x1400349a0], rax
test rax, rax
je 0x140002828
lea rdx, [0x1400349a8]
mov rcx, rax
call qword [sym.imp.USER32.dll_GetWindowRect]
test eax, eax
je 0x140002828
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0xf0], rdi
mov qword [rsp + 0xc8], r14
mov qword [rsp + 0xc0], r15
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xa0], xmm7
movaps xmmword [rsp + 0x90], xmm8
movaps xmmword [rsp + 0x80], xmm9
movaps xmmword [rsp + 0x70], xmm10
call fcn.140004230
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
xor r15d, r15d
xorps xmm0, xmm0
mov rdi, rax
mov dword [rbp - 0x49], r15d
xor eax, eax
mov dword [rbp - 0x45], r15d
mov dword [rbp - 0x29], eax
mov word [rbp - 0x25], ax
movups xmmword [rbp - 0x39], xmm0
cmp rdi, 0xffffffffffffffff
je 0x14000244f
lea rdx, [rbp - 0x39]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetConsoleScreenBufferInfo]
test eax, eax
je 0x14000244f
movsx eax, word [rbp - 0x39]
mov ebx, r15d
movsx esi, word [rbp - 0x37]
mov r9d, ebx
imul esi, eax
mov dl, 0x20
lea rax, [rbp - 0x49]
mov rcx, rdi
mov qword [rsp + 0x20], rax
mov r8d, esi
call qword [sym.imp.KERNEL32.dll_FillConsoleOutputCharacterA]
test eax, eax
je 0x14000244f
movzx edx, word [rbp - 0x31]
lea rax, [rbp - 0x49]
mov r9d, ebx
mov qword [rsp + 0x20], rax
mov r8d, esi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FillConsoleOutputAttribute]
test eax, eax
je 0x14000244f
mov edx, ebx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleCursorPosition]
movss xmm8, dword [0x14002d3b0]
lea rdi, [0x140033330]
movss xmm10, dword [0x14002d3b4]
lea rsi, [0x14002d35c]
movss xmm9, dword [0x14002d3b8]
xorps xmm7, xmm7
nop dword [rax + rax]
movss dword [rbp - 0x3d], xmm7
xorps xmm6, xmm6
nop dword [rax + rax]
lea rdx, [0x14002d364]
mov rcx, rdi
call fcn.140003650
movss dword [rbp - 0x41], xmm6
lea rcx, [rbp - 0x39]
mov rdx, qword [rbp - 0x41]
mov rbx, rax
call fcn.140002200
mov r8, rax
mov r9d, dword [rax + 8]
lea ecx, [r9 - 0xe4]
mov edx, ecx
neg edx
cmovs edx, ecx
cmp edx, 5
jge 0x1400024fc
mov edx, dword [rax + 0xc]
sub edx, 0xd8
mov ecx, edx
neg ecx
cmovs ecx, edx
cmp ecx, 5
jge 0x1400024fc
mov ecx, dword [rax + 0x10]
sub ecx, 0xc6
mov eax, ecx
neg eax
cmovs eax, ecx
cmp eax, 5
jge 0x1400024fc
mov al, 1
jmp 0x140002541
lea eax, [r9 - 0xf7]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, 5
jge 0x14000253f
mov ecx, dword [r8 + 0xc]
sub ecx, 0xf1
mov eax, ecx
neg eax
cmovs eax, ecx
cmp eax, 5
jge 0x14000253f
mov ecx, dword [r8 + 0x10]
sub ecx, 0xd6
mov eax, ecx
neg eax
cmovs eax, ecx
cmp eax, 5
jge 0x14000253f
mov al, 1
jmp 0x140002541
xor al, al
test al, al
lea rdx, [0x14002d360]
mov rcx, rbx
cmovne rdx, rsi
call fcn.140003650
mov rcx, rax
lea rdx, str.__X_
call fcn.140003650
addss xmm6, xmm8
comiss xmm10, xmm6
ja 0x140002490
mov rax, qword [0x140033330]
mov dl, 0xa
movsxd rcx, dword [rax + 4]
add rcx, rdi
call fcn.140003f80
movzx edx, al
mov rcx, rdi
call fcn.140003dd0
mov rcx, rdi
call fcn.140003c70
addss xmm7, xmm8
comiss xmm9, xmm7
ja 0x140002480
xorps xmm0, xmm0
mov r14d, 4
movss dword [rbp - 0x49], xmm0
xor sil, sil
nop dword [rax]
test sil, sil
jne 0x1400027b6
xorps xmm1, xmm1
movss dword [rbp - 0x45], xmm1
test sil, sil
jne 0x14000279d
unpcklps xmm0, xmm1
lea rcx, [rbp - 0x39]
movq rdx, xmm0
call fcn.140002200
mov r9d, dword [rbp - 0x31]
mov r8d, dword [rbp - 0x29]
mov edx, dword [rbp - 0x2d]
lea eax, [r9 - 0xe4]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, 5
jge 0x14000262e
lea eax, [rdx - 0xd8]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, 5
jge 0x14000262e
lea eax, [r8 - 0xc6]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, 5
jl 0x140002672
lea eax, [r9 - 0xf7]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, 5
jge 0x14000277f
lea eax, [rdx - 0xf1]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, 5
jge 0x14000277f
lea eax, [r8 - 0xd6]
mov ecx, eax
neg ecx
cmovs ecx, eax
cmp ecx, 5
jge 0x14000277f
mov rax, qword gs:[0x58]
mov rdi, qword [rax]
mov eax, dword [r14 + rdi]
cmp dword [0x140034a0c], eax
jle 0x1400026c1
lea rcx, [0x140034a0c]
call fcn.140007194
cmp dword [0x140034a0c], 0xffffffff
jne 0x1400026c1
lea rax, [rbp - 0x49]
mov qword [0x140034a10], rax
lea rcx, [0x140034a0c]
lea rax, [rbp - 0x45]
mov qword [0x140034a18], rax
call fcn.140007128
mov eax, dword [r14 + rdi]
cmp dword [0x140034a08], eax
jle 0x140002704
lea rcx, [0x140034a08]
call fcn.140007194
cmp dword [0x140034a08], 0xffffffff
jne 0x140002704
lea rax, [rbp - 0x49]
mov qword [0x1400349f8], rax
lea rcx, [0x140034a08]
lea rax, [rbp - 0x45]
mov qword [0x140034a00], rax
call fcn.140007128
call fcn.140002840
test al, al
jne 0x140002716
call fcn.140002cc0
test al, al
je 0x14000277f
lea rcx, [rbp - 0x41]
mov qword [rbp - 0x41], r15
call qword [sym.imp.USER32.dll_GetCursorPos]
cvttss2si edx, dword [rbp - 0x35]
cvttss2si ecx, dword [rbp - 0x39]
call qword [sym.imp.USER32.dll_SetCursorPos]
cvttss2si rbx, dword [rbp - 0x35]
xor r9d, r9d
mov ecx, 2
mov qword [rsp + 0x20], r15
cvttss2si rdi, dword [rbp - 0x39]
mov r8d, ebx
mov edx, edi
call qword [sym.imp.USER32.dll_mouse_event]
xor r9d, r9d
mov qword [rsp + 0x20], r15
mov r8d, ebx
mov edx, edi
mov ecx, 4
call qword [sym.imp.USER32.dll_mouse_event]
mov edx, dword [rbp - 0x3d]
mov ecx, dword [rbp - 0x41]
call qword [sym.imp.USER32.dll_SetCursorPos]
mov sil, 1
movss xmm1, dword [rbp - 0x45]
movss xmm0, dword [rbp - 0x49]
addss xmm1, xmm8
comiss xmm9, xmm1
movss dword [rbp - 0x45], xmm1
ja 0x1400025d1
addss xmm0, xmm8
comiss xmm10, xmm0
movss dword [rbp - 0x49], xmm0
ja 0x1400025c0
test sil, sil
je 0x1400027c1
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rax, qword [0x140032c90]
cmp rax, qword [0x140032c98]
movaps xmm10, xmmword [rsp + 0x70]
movaps xmm9, xmmword [rsp + 0x80]
movaps xmm8, xmmword [rsp + 0x90]
movaps xmm7, xmmword [rsp + 0xa0]
movaps xmm6, xmmword [rsp + 0xb0]
mov r15, qword [rsp + 0xc0]
mov r14, qword [rsp + 0xc8]
mov rdi, qword [rsp + 0xf0]
mov rsi, qword [rsp + 0xe8]
mov rbx, qword [rsp + 0xe0]
je 0x140002828
mov qword [0x140032c98], rax
mov rcx, qword [rbp - 0x19]
xor rcx, rsp
call fcn.140007100
add rsp, 0xd0
pop rbp
ret