Function at 0x140010070
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xb8]
sub rsp, 0x190
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x140096040]
xor rax, rsp
mov qword [rbp + 0x60], rax
mov rdi, qword [rbp + 0xe8]
mov qword [rbp - 0x78], rdi
mov r13, qword [rbp + 0xf0]
lea rsi, [r13 + 8]
mov qword [rsp + 0x60], rsi
xor r15d, r15d
movsxd rax, dword [0x140096c28]
test eax, eax
jns 0x1400100de
mov dword [0x140096c28], r15d
jmp 0x140010101
mov rcx, qword [rsi]
sub rcx, qword [r13]
sar rcx, 5
mov qword [rsp + 0x60], rsi
cmp rax, rcx
jb 0x140010101
lea eax, [rcx - 1]
mov dword [0x140096c28], eax
mov qword [rsp + 0x60], rsi
movdqa xmm0, xmmword [0x14008f4b0]
movdqa xmmword [rsp + 0x50], xmm0
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
mov r14d, dword [rbp + 0xe0]
mov dword [rsp + 0x20], r14d
mov edx, 0x19
lea r9d, [rdx + 0x4b]
lea r8d, [rdx + 0x23]
call fcn.14000d250
movdqa xmm0, xmmword [0x14008f500]
movdqa xmmword [rsp + 0x50], xmm0
lea eax, [r14 - 2]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], eax
mov edx, 0x1a
lea r9d, [rdx + 0x48]
lea r8d, [rdx + 0x23]
call fcn.14000d250
mov dword [rbp + 0x18], 0xa
mov dword [rbp + 0x1c], 0xa
mov eax, 0x66666667
imul dword [0x140096fd4]
mov ecx, edx
sar ecx, 2
mov eax, ecx
shr eax, 0x1f
add ecx, eax
mov dword [rbp + 0x28], ecx
mov eax, 0x66666667
imul dword [0x140096fd8]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp + 0x2c], edx
mov word [rbp + 0x4e], r15w
mov dword [rbp + 0x5c], 0xa00
mov dword [rbp + 0x10], r15d
mov dword [rbp + 0x14], 1
mov eax, 0x66666667
imul dword [0x140096fdc]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx r8d, dl
mov rax, qword [rbp + 0x28]
shr rax, 0x20
movzx edx, al
shl edx, 8
mov eax, r8d
shl eax, 0x10
or edx, eax
movzx eax, cl
or edx, eax
mov rax, qword [rbp + 0x18]
shr rax, 0x20
movzx ecx, al
shl ecx, 8
or ecx, 0xa000a
mov dword [rbp + 0x40], 0x1b
mov dword [rbp + 0x44], 0x3e
mov dword [rbp + 0x50], 0x7b
lea eax, [r14 + 0x3a]
mov dword [rbp + 0x54], eax
movzx eax, dl
shl ax, 8
mov word [rbp + 0x48], ax
mov r9d, 0xff00
and dx, r9w
mov word [rbp + 0x4a], dx
shl r8w, 8
mov word [rbp + 0x4c], r8w
movzx eax, cl
shl ax, 8
mov word [rbp + 0x58], ax
and cx, r9w
mov word [rbp + 0x5a], cx
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 1
lea r9, [rbp + 0x10]
mov r8d, 2
lea rdx, [rbp + 0x40]
mov rcx, qword [0x140097000]
call qword [sym.imp.MSIMG32.dll_GradientFill]
movdqa xmm0, xmmword [0x14008f4b0]
movdqa xmmword [rsp + 0x50], xmm0
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1400102a0
mov rdx, qword [rdi]
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x78], xmm1
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], r15b
jne 0x1400102c0
lea rcx, [rsp + 0x68]
call fcn.140088e70
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x50], xmm1
mov r8d, inet_ntoa
lea rdx, str.Small_Fonts
lea rcx, [rbp + 0x40]
call fcn.140088e70
mov r12d, 0x2bc
mov word [rsp + 0x38], r12w
mov word [rsp + 0x30], 0xe
lea rax, [rbp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x68]
mov edx, 0x29
lea r8d, [rdx + 0xd]
call fcn.14000d330
movdqa xmm0, xmmword [0x14008f550]
movdqa xmmword [rsp + 0x50], xmm0
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x14001034c
mov rdx, qword [rdi]
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x78], xmm1
nop dword [rax]
inc rbx
cmp byte [rdx + rbx], r15b
jne 0x140010360
mov r8, rbx
lea rcx, [rsp + 0x68]
call fcn.140088e70
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x50], xmm1
mov r8d, inet_ntoa
lea rdx, str.Small_Fonts
lea rcx, [rbp + 0x40]
call fcn.140088e70
mov word [rsp + 0x38], r12w
mov word [rsp + 0x30], 0xe
lea rax, [rbp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x68]
mov edx, 0x28
lea r8d, [rdx + 0xd]
call fcn.14000d330
movzx ebx, r15w
mov rax, qword [rsi]
sub rax, qword [r13]
sar rax, 5
test rax, rax
je 0x140010937
movdqa xmm6, xmmword [0x14008f4b0]
mov r12, r15
movdqa xmm7, xmmword [0x14008f560]
mov edi, 0x8000
nop
movsx eax, bx
imul edx, eax, 0x1e
add edx, 0x4a
mov eax, dword [0x140097008]
mov r9d, dword [0x140097010]
cmp eax, r9d
jl 0x14001045b
cmp eax, dword [0x140097018]
jg 0x14001045b
mov ecx, dword [0x14009700c]
mov r8d, dword [0x140097014]
cmp ecx, r8d
jl 0x14001045b
cmp ecx, dword [0x14009701c]
jg 0x14001045b
sub eax, r9d
sub eax, 0x19
cmp eax, 0x64
ja 0x14001045b
sub ecx, r8d
cmp ecx, edx
jl 0x14001045b
lea eax, [rdx + 0x17]
cmp ecx, eax
mov ecx, 1
jle 0x14001045e
mov ecx, r15d
movsx eax, bx
cmp dword [0x140096c28], eax
jne 0x1400106a4
mov eax, dword [0x140096fd4]
cdq
and edx, 3
lea r10d, [rdx + rax]
sar r10d, 2
mov dword [rbp - 0x60], r10d
mov eax, dword [0x140096fd8]
cdq
and edx, 3
add eax, edx
sar eax, 2
mov dword [rbp - 0x5c], eax
mov dword [rbp - 0x70], 0x14
mov dword [rbp - 0x6c], 0x14
movsx edi, bx
imul r8d, edi, 0x1e
add r8d, 0x4b
mov word [rbp + 0x4e], r15w
mov word [rbp + 0x5e], r15w
mov dword [rbp + 0x10], r15d
mov dword [rbp + 0x14], 1
mov rax, qword [rbp - 0x70]
shr rax, 0x20
movzx r9d, al
shl r9d, 8
or r9d, 0x140014
mov eax, dword [0x140096fdc]
cdq
and edx, 3
add eax, edx
sar eax, 2
movzx edx, al
mov rax, qword [rbp - 0x60]
shr rax, 0x20
movzx ecx, al
shl ecx, 8
mov eax, edx
shl eax, 0x10
or ecx, eax
movzx eax, r10b
or ecx, eax
mov dword [rbp + 0x40], 0x1b
mov dword [rbp + 0x44], r8d
mov dword [rbp + 0x50], 0x7b
lea eax, [r8 + 0x19]
mov dword [rbp + 0x54], eax
movzx eax, r9b
shl ax, 8
mov word [rbp + 0x48], ax
movzx eax, r9w
mov esi, 0xff00
and ax, si
mov word [rbp + 0x4a], ax
shr r9d, 0x10
shl r9w, 8
mov word [rbp + 0x4c], r9w
movzx eax, cl
shl ax, 8
mov word [rbp + 0x58], ax
and cx, si
mov word [rbp + 0x5a], cx
shl dx, 8
mov word [rbp + 0x5c], dx
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], 1
lea r9, [rbp + 0x10]
mov r8d, 2
lea rdx, [rbp + 0x40]
mov rcx, qword [0x140097000]
call qword [sym.imp.MSIMG32.dll_GradientFill]
mov dword [rbp - 0x40], 0x14
mov dword [rbp - 0x3c], 0x14
mov eax, dword [0x140096fd4]
cdq
and edx, 3
lea r8d, [rdx + rax]
sar r8d, 2
mov dword [rbp - 0x50], r8d
mov eax, dword [0x140096fd8]
cdq
and edx, 3
add eax, edx
sar eax, 2
mov dword [rbp - 0x4c], eax
imul r10d, edi, 0x1e
add r10d, 0x4c
mov word [rbp + 0x4e], r15w
mov word [rbp + 0x5e], r15w
mov dword [rbp + 0x18], r15d
mov dword [rbp + 0x1c], 1
mov eax, dword [0x140096fdc]
cdq
and edx, 3
add eax, edx
sar eax, 2
movzx r9d, al
mov rax, qword [rbp - 0x50]
shr rax, 0x20
movzx ecx, al
shl ecx, 8
mov eax, r9d
shl eax, 0x10
or ecx, eax
movzx eax, r8b
or ecx, eax
mov rax, qword [rbp - 0x40]
shr rax, 0x20
movzx edx, al
shl edx, 8
or edx, 0x140014
mov dword [rbp + 0x40], 0x1b
mov dword [rbp + 0x44], r10d
mov dword [rbp + 0x50], 0x7b
lea eax, [r10 + 0x17]
mov dword [rbp + 0x54], eax
movzx eax, cl
shl ax, 8
mov word [rbp + 0x48], ax
and cx, si
mov word [rbp + 0x4a], cx
shl r9w, 8
mov word [rbp + 0x4c], r9w
movzx eax, dl
shl ax, 8
mov word [rbp + 0x58], ax
movzx eax, dx
and ax, si
mov word [rbp + 0x5a], ax
shr edx, 0x10
shl dx, 8
mov word [rbp + 0x5c], dx
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], 1
lea r9, [rbp + 0x18]
mov r8d, 2
lea rdx, [rbp + 0x40]
mov rcx, qword [0x140097000]
call qword [sym.imp.MSIMG32.dll_GradientFill]
jmp 0x140010829
test ecx, ecx
je 0x140010829
mov dword [rsp + 0x50], 0x14
mov dword [rsp + 0x54], 0x14
mov eax, 0x66666667
imul dword [0x140096fd4]
mov r10d, edx
sar r10d, 1
mov eax, r10d
shr eax, 0x1f
add r10d, eax
mov dword [rsp + 0x68], r10d
mov eax, 0x66666667
imul dword [0x140096fd8]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rsp + 0x6c], edx
movsx eax, bx
imul r9d, eax, 0x1e
add r9d, 0x4c
mov word [rbp + 0x4e], r15w
mov word [rbp + 0x5e], r15w
mov dword [rbp + 0x28], r15d
mov dword [rbp + 0x2c], 1
mov eax, 0x66666667
imul dword [0x140096fdc]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx r8d, dl
mov rax, qword [rsp + 0x68]
shr rax, 0x20
movzx ecx, al
shl ecx, 8
mov eax, r8d
shl eax, 0x10
or ecx, eax
movzx eax, r10b
or ecx, eax
mov rax, qword [rsp + 0x50]
shr rax, 0x20
movzx edx, al
shl edx, 8
or edx, 0x140014
mov dword [rbp + 0x40], 0x1b
mov dword [rbp + 0x44], r9d
mov dword [rbp + 0x50], 0x7b
lea eax, [r9 + 0x17]
mov dword [rbp + 0x54], eax
movzx eax, cl
shl ax, 8
mov word [rbp + 0x48], ax
mov r9d, 0xff00
and cx, r9w
mov word [rbp + 0x4a], cx
shl r8w, 8
mov word [rbp + 0x4c], r8w
movzx eax, dl
shl ax, 8
mov word [rbp + 0x58], ax
movzx eax, dx
and ax, r9w
mov word [rbp + 0x5a], ax
shr edx, 0x10
shl dx, 8
mov word [rbp + 0x5c], dx
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], 1
lea r9, [rbp + 0x28]
mov r8d, 2
lea rdx, [rbp + 0x40]
mov rcx, qword [0x140097000]
call qword [sym.imp.MSIMG32.dll_GradientFill]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [0x140096fe8]
jne 0x140010829
cmp dword [0x140097028], 0
jne 0x140010829
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test di, ax
je 0x140010829
mov qword [rsp + 0x20], r15
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea ecx, [rdx + 4]
call qword [sym.imp.USER32.dll_mouse_event]
movsx eax, bx
mov dword [0x140096c28], eax
movdqa xmmword [rbp + 0x40], xmm6
shl r12, 5
mov rdi, qword [r13]
add rdi, r12
movsx r15d, bx
movzx r14d, word [0x140096fd0]
add r14w, 2
lea rdx, [0x140096fb0]
lea rcx, [rbp - 0x30]
call fcn.140038c80
mov rsi, rax
mov rdx, rdi
lea rcx, [rbp - 0x10]
call fcn.140038c80
mov r9, rax
imul r8d, r15d, 0x1e
add r8d, 0x51
mov word [rsp + 0x38], 0x190
mov word [rsp + 0x30], r14w
mov qword [rsp + 0x28], rsi
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
mov edx, 0x2e
call fcn.14000d330
movdqa xmmword [rbp + 0x40], xmm7
mov rdi, qword [r13]
add rdi, r12
movzx r14d, word [0x140096fd0]
add r14w, 2
lea rdx, [0x140096fb0]
lea rcx, [rbp - 0x10]
call fcn.140038c80
mov rsi, rax
mov rdx, rdi
lea rcx, [rbp - 0x30]
call fcn.140038c80
mov r9, rax
imul r8d, r15d, 0x1e
add r8d, 0x50
mov word [rsp + 0x38], 0x190
mov word [rsp + 0x30], r14w
mov qword [rsp + 0x28], rsi
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
mov edx, 0x2d
call fcn.14000d330
inc bx
movsx r12, bx
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
sub rax, qword [r13]
sar rax, 5
cmp r12, rax
mov edi, 0x8000
mov r15d, 0
jb 0x140010400
mov rdi, qword [rbp - 0x78]
mov r14d, dword [rbp + 0xe0]
mov r8d, dword [0x140097008]
mov r10d, dword [0x140097010]
mov eax, r8d
sub eax, r10d
sub eax, 0x19
mov r9d, dword [0x140097014]
mov edx, dword [0x14009700c]
cmp eax, 0x64
ja 0x140010972
mov ecx, edx
sub ecx, r9d
cmp ecx, 0x3c
jl 0x140010972
lea eax, [r14 + 0x3c]
cmp ecx, eax
jle 0x14001098d
cmp r8d, r10d
jl 0x14001098d
cmp r8d, dword [0x140097018]
jg 0x14001098d
cmp edx, r9d
jl 0x14001098d
cmp edx, dword [0x14009701c]
jle 0x140010997
mov dword [0x140097024], 1
mov ebx, dword [0x140096c28]
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x1400109d3
inc rdx
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x1400109ce
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140010a23
mov rcx, r8
call fcn.14008a0d0
mov qword [rdi + 0x10], r15
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
mov rcx, r13
call fcn.140039090
mov eax, ebx
mov rcx, qword [rbp + 0x60]
xor rcx, rsp
call fcn.14008a0b0
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3