Function at 0x180035040
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, [rsp - 0x70]
sub rsp, 0x170
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
mov rax, qword [0x1800593b0]
xor rax, rsp
mov qword [rbp], rax
cmp byte [0x18005a107], 0
je 0x180035886
mov ecx, dword [0x180059d28]
mov rax, qword gs:[0x58]
mov esi, 4
mov rbx, qword [rax + rcx*8]
mov eax, dword [rbx + rsi]
cmp dword [0x18005b308], eax
jle 0x180035122
lea rcx, [0x18005b308]
call fcn.18004407c
cmp dword [0x18005b308], 0xffffffff
jne 0x180035122
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x1800350f4
imul rax, rax, 0x64
jmp 0x18003510f
cqo
idiv rdi
imul r8, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rax, r8
mov qword [0x18005b330], rax
lea rcx, [0x18005b308]
call fcn.18004401c
mov eax, dword [rbx + rsi]
cmp dword [0x18005b300], eax
jle 0x18003518e
lea rcx, [0x18005b300]
call fcn.18004407c
cmp dword [0x18005b300], 0xffffffff
jne 0x18003518e
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x180035160
imul rax, rax, 0x64
jmp 0x18003517b
cqo
idiv rdi
imul r8, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rax, r8
mov qword [0x18005b310], rax
lea rcx, [0x18005b300]
call fcn.18004401c
xor r15d, r15d
mov eax, dword [rbx + rsi]
cmp dword [0x18005b304], eax
jle 0x1800351e0
lea rcx, [0x18005b304]
call fcn.18004407c
cmp dword [0x18005b304], 0xffffffff
jne 0x1800351e0
mov qword [0x18005b348], r15
movdqa xmm0, xmmword [0x180050180]
movdqu xmmword [0x18005b358], xmm0
lea rcx, [0x1800469b0]
call fcn.180043ea8
lea rcx, [0x18005b304]
call fcn.18004401c
call fcn.18003d7c0
mov rsi, rax
mov rcx, qword [0x180059db8]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x30]
lea rdx, str.com_craftrise_client_S
call r8
mov qword [0x18005a288], rax
mov rcx, qword [0x180059db8]
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
lea r9, str.__Lcom_craftrise_client_fa_
lea r8, [0x18004f2fc]
mov rdx, rax
call r10
mov rbx, rax
call fcn.18003d7c0
mov r8, rbx
mov rdx, rax
mov rcx, qword [0x180059db8]
call fcn.1800343c0
mov rbx, rax
mov rcx, qword [0x180059db8]
mov rax, qword [rcx]
mov r8, qword [rax + 0x30]
lea rdx, str.com_craftrise_client_S
call r8
mov qword [0x18005a288], rax
mov rcx, qword [0x180059db8]
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x2f0]
lea r9, str.Lcom_craftrise_client_cf_
lea r8, [0x18004fb24]
mov rdx, rax
call r10
mov rdi, rax
mov qword [0x18005a2b0], rax
call fcn.18003d7c0
mov rcx, qword [0x180059db8]
mov rdx, qword [rcx]
mov r9, qword [rdx + 0x2f8]
mov r8, rdi
mov rdx, rax
call r9
mov qword [rbp - 0x70], rax
test rsi, rsi
je 0x180035886
lea rcx, [rbp - 0x70]
call fcn.18003d880
mov r14, rax
mov qword [rsp + 0x28], rax
test rax, rax
je 0x180035886
mov rcx, qword [0x180059db8]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xf8]
mov rdx, rax
call r8
mov rsi, rax
mov rcx, qword [0x180059db8]
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
lea r9, [0x18004f400]
lea r8, str.size
mov rdx, rax
call r10
mov rdi, rax
mov rcx, qword [0x180059db8]
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
lea r9, str._I_Ljava_lang_Object_
lea r8, [0x18004f420]
mov rdx, rsi
call r10
mov rsi, rax
mov qword [rbp - 0x70], rax
mov r8, rdi
mov rdx, r14
mov rcx, qword [0x180059db8]
call fcn.1800343f0
mov dword [rsp + 0x24], eax
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x78], xmm1
mov qword [rbp - 0x78], r15
mov edi, r15d
mov dword [rsp + 0x20], r15d
mov r12d, 0x8000
test eax, eax
jle 0x180035767
xorps xmm11, xmm11
movss xmm8, dword [0x18004ffdc]
movss xmm9, dword [0x18004ff9c]
movsd xmm10, qword [0x180050058]
nop dword [rax]
nop word [rax + rax]
mov r9d, edi
mov r8, rsi
mov rdx, r14
mov rcx, qword [0x180059db8]
call fcn.1800343c0
mov r13, rax
mov qword [rsp + 0x70], rax
test rax, rax
je 0x180035757
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
movups xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x48], r15
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], recv
mov byte [rbp - 0x48], 0
mov qword [rbp - 0x28], rax
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x48], socket
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x50], rbx
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x30]
call fcn.18003dc00
nop
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x48]
call fcn.18003dc00
movups xmm0, xmmword [rax]
movsd xmm2, qword [rax + 0x10]
movsd xmm4, qword [rsp + 0x58]
subsd xmm4, xmm0
movsd xmm3, qword [rsp + 0x60]
unpckhpd xmm0, xmm0
subsd xmm3, xmm0
movsd xmm1, qword [rsp + 0x68]
movsd qword [rsp + 0x40], xmm2
subsd xmm1, xmm2
mulsd xmm4, xmm4
mulsd xmm3, xmm3
addsd xmm4, xmm3
mulsd xmm1, xmm1
addsd xmm4, xmm1
xorps xmm0, xmm0
ucomisd xmm0, xmm4
ja 0x180035487
sqrtpd xmm7, xmm4
jmp 0x180035492
movaps xmm0, xmm4
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movaps xmm7, xmm0
mov rcx, qword [0x180059db8]
mov rax, qword [rcx]
mov r8, qword [rax + 0x30]
lea rdx, str.com_craftrise_mj
call r8
mov rcx, qword [0x180059db8]
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
lea r9, [0x18004ff1c]
lea r8, [0x18004ff18]
mov rdx, rax
call r10
mov r8, rax
mov rdx, r13
mov rcx, qword [0x180059db8]
call fcn.180034420
movaps xmm6, xmm0
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x48]
call fcn.18003da30
nop
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x68]
call fcn.1800349d0
nop
comisd xmm7, xmm11
jbe 0x180035689
movss xmm0, dword [0x1800593fc]
cvtps2pd xmm0, xmm0
comisd xmm0, xmm7
jbe 0x180035785
ucomiss xmm6, xmm8
jp 0x18003552c
je 0x180035785
ucomiss xmm6, xmm9
jp 0x180035538
je 0x180035785
mov rdi, qword [0x18005a550]
mov rsi, qword [rbp - 0x68]
mov r14, qword [0x18005a558]
cmp rdi, r14
je 0x18003559e
cmp qword [rbp - 0x50], 0x10
setae r12b
mov r15, qword [rbp - 0x58]
nop dword [rax]
lea rdx, [rbp - 0x68]
test r12b, r12b
cmovne rdx, rsi
mov r8, qword [rdi + 0x10]
mov rcx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x18003557c
mov rcx, qword [rdi]
cmp r8, r15
jne 0x18003558a
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180035595
add rdi, 0x20
cmp rdi, r14
je 0x18003559e
jmp 0x180035560
cmp rdi, r14
jne 0x180035637
lea rax, [rbp - 0x68]
cmp qword [rbp - 0x50], 0x10
cmovae rax, rsi
mov qword [0x180059410], rax
mov rdx, qword [rbp - 0x80]
cmp rdx, qword [rbp - 0x78]
je 0x1800355c6
mov qword [rdx], r13
add qword [rbp - 0x80], 8
jmp 0x1800355d5
lea r8, [rsp + 0x70]
lea rcx, [rsp + 0x78]
call fcn.180039ed0
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rdi, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rdi, 0x989680
jne 0x1800355f3
imul rcx, rax, 0x64
jmp 0x18003560e
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rcx, rax
mov qword [0x18005b310], rcx
lea rdx, [rbp - 0x68]
cmp qword [rbp - 0x50], 0x10
cmovae rdx, qword [rbp - 0x68]
mov r8, qword [rbp - 0x58]
lea rcx, [0x18005b348]
call fcn.180007070
mov rsi, qword [rbp - 0x68]
mov r14, qword [rsp + 0x28]
mov edi, dword [rsp + 0x20]
comisd xmm10, xmm7
jbe 0x18003568d
ucomiss xmm6, xmm8
jp 0x18003564f
je 0x18003568d
ucomiss xmm6, xmm9
jp 0x180035657
je 0x18003568d
mov ecx, 0x23
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x180035672
lea rcx, [rbp - 0x68]
call fcn.180034ad0
mov ecx, 0x2e
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x180035689
call fcn.180034e70
mov rsi, qword [rbp - 0x68]
mov rdx, qword [rbp - 0x50]
cmp rdx, 0x10
jb 0x1800356c7
inc rdx
mov rax, rsi
cmp rdx, 0x1000
jb 0x1800356bf
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003578e
mov rcx, rsi
call fcn.18004389c
xor r15d, r15d
mov qword [rbp - 0x58], r15
mov qword [rbp - 0x50], recv
mov byte [rbp - 0x68], r15b
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x180035716
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180035710
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180035795
call fcn.18004389c
nop
mov rdx, qword [rbp - 0x30]
cmp rdx, 0x10
jb 0x18003574d
inc rdx
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180035748
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003579c
call fcn.18004389c
mov r12d, 0x8000
mov rsi, qword [rbp - 0x70]
inc edi
mov dword [rsp + 0x20], edi
cmp edi, dword [rsp + 0x24]
jl 0x1800353b0
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x1800357a3
imul rbx, rax, 0x64
jmp 0x1800357bf
mov rsi, qword [rbp - 0x68]
jmp 0x180035640
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
mov rsi, rbx
sub rsi, qword [0x18005b330]
mov rcx, qword [rsp + 0x78]
cmp byte [0x180059d87], 0
je 0x180035802
cmp rcx, qword [rbp - 0x80]
je 0x180035849
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test r12w, ax
je 0x180035844
cmp rsi, 0x11e1a300
jl 0x180035844
mov rdi, qword [rbp - 0x80]
sub rdi, qword [rsp + 0x78]
jmp 0x180035817
mov rdi, qword [rbp - 0x80]
cmp rcx, rdi
je 0x180035849
cmp rsi, 0x1a39de00
jl 0x180035849
sub rdi, rcx
sar rdi, 3
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
cdqe
xor edx, edx
div rdi
mov rcx, qword [rsp + 0x78]
mov rcx, qword [rcx + rdx*8]
call fcn.180034750
mov qword [0x18005b310], rbx
mov qword [0x18005b330], rbx
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x180035886
mov rdx, qword [rbp - 0x78]
sub rdx, rcx
and rdx, 0xfffffffffffffff8
mov rax, rcx
cmp rdx, 0x1000
jb 0x180035881
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180035881
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18004389c
mov rcx, qword [rbp]
xor rcx, rsp
call fcn.180043840
lea r11, [rsp + 0x170]
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]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret