Function at 0x180039300
Capabilities:
Log keystrokes via polling

Disassembly:
push rbp
push rbx
push rsi
push rdi
lea rbp, [rsp - 0x48]
sub rsp, 0x148
mov rax, qword [0x180706040]
xor rax, rsp
mov qword [rbp - 0x70], rax
mov ecx, dword [0x180706b88]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov ecx, dword [rdx + rax]
cmp dword [0x18070716c], ecx
jle 0x18003936f
lea rcx, [0x18070716c]
call fcn.18003ec2c
cmp dword [0x18070716c], 0xffffffff
jne 0x18003936f
lea rcx, [0x180707170]
call fcn.180039220
lea rcx, [0x18070716c]
call fcn.18003ebc0
call fcn.18003d0a0
mov rcx, qword [0x180706bc0]
lea rdx, str.com_craftrise_client_S
mov rsi, rax
mov r8, qword [rcx]
call qword [r8 + 0x30]
mov rcx, qword [0x180706bc0]
lea r9, str.__Lcom_craftrise_client_fa_
lea r8, [0x1806fd7b4]
mov qword [0x180706e58], rax
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
mov rdx, rax
call r10
mov rbx, rax
call fcn.18003d0a0
mov rcx, qword [0x180706bc0]
mov r8, rbx
mov rdx, rax
call fcn.180039190
mov rcx, qword [0x180706bc0]
lea rdx, str.com_craftrise_client_S
mov rdi, rax
mov rax, qword [rcx]
call qword [rax + 0x30]
mov rcx, qword [0x180706bc0]
lea r9, str.Lcom_craftrise_client_cf_
lea r8, [0x1806fda80]
mov qword [0x180706e58], rax
mov rdx, rax
mov r10, qword [rcx]
call qword [r10 + 0x2f0]
mov rbx, rax
mov qword [0x180706e80], rax
call fcn.18003d0a0
mov rcx, qword [0x180706bc0]
mov r8, rbx
mov rdx, qword [rcx]
mov r9, qword [rdx + 0x2f8]
mov rdx, rax
call r9
mov qword [rsp + 0x58], rax
test rsi, rsi
je 0x180039b09
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x170], r12
call fcn.18003d150
mov r12, rax
test rax, rax
je 0x180039b01
mov rcx, qword [0x180706bc0]
mov qword [rsp + 0x178], r13
mov qword [rsp + 0x140], r15
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xf8]
mov rdx, rax
call r8
mov rcx, qword [0x180706bc0]
lea r9, [0x1806fd804]
lea r8, str.size
mov rbx, rax
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
mov rdx, rax
call r10
mov rcx, qword [0x180706bc0]
lea r9, str._I_Ljava_lang_Object_
lea r8, [0x1806fd828]
mov rsi, rax
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
mov rdx, rbx
call r10
mov rcx, qword [0x180706bc0]
mov rbx, rax
mov qword [rsp + 0x28], rax
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x30]
lea rdx, str.com_craftrise_m9
call r8
mov rcx, qword [0x180706bc0]
lea r9, str.Lcom_craftrise_dR_
lea r8, [0x1806fd95c]
mov rdx, rax
mov r10, qword [rcx]
call qword [r10 + 0x2f0]
mov rcx, qword [0x180706bc0]
mov r8, rsi
mov rdx, r12
call fcn.1800391c0
xor r13b, r13b
mov dword [rsp + 0x20], eax
xor r15d, r15d
test eax, eax
jle 0x180039af1
mov qword [rsp + 0x180], r14
movaps xmmword [rsp + 0x110], xmm8
movss xmm8, dword [0x1806fdb44]
movaps xmmword [rsp + 0xe0], xmm11
movss xmm11, dword [0x1806fdd70]
movaps xmmword [rsp + 0xd0], xmm12
movss xmm12, dword [0x1806fdb94]
movaps xmmword [rsp + 0xc0], xmm13
xorps xmm13, xmm13
movaps xmmword [rsp + 0xb0], xmm14
movsd xmm14, qword [0x1806fdbc8]
movaps xmmword [rsp + 0xa0], xmm15
movss xmm15, dword [0x1806fdb24]
movaps xmmword [rsp + 0x130], xmm6
movaps xmmword [rsp + 0x120], xmm7
movaps xmmword [rsp + 0x100], xmm9
movaps xmmword [rsp + 0xf0], xmm10
nop word [rax + rax]
mov rcx, qword [0x180706bc0]
mov r9d, r15d
mov r8, rbx
mov rdx, r12
call fcn.180039190
mov r14, rax
test rax, rax
je 0x180039a83
test r13b, r13b
jne 0x180039a83
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x58], rdi
call fcn.18003d1e0
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x60]
call fcn.18003d1e0
movsd xmm3, qword [rsp + 0x30]
movsd xmm4, qword [rsp + 0x38]
movsd xmm1, qword [rsp + 0x40]
movups xmm0, xmmword [rax]
movsd xmm2, qword [rax + 0x10]
subsd xmm3, xmm0
movsd qword [rsp + 0x78], xmm2
unpckhpd xmm0, xmm0
subsd xmm1, xmm2
subsd xmm4, xmm0
xorps xmm0, xmm0
mulsd xmm3, xmm3
mulsd xmm4, xmm4
mulsd xmm1, xmm1
addsd xmm4, xmm3
addsd xmm4, xmm1
ucomisd xmm0, xmm4
ja 0x180039685
sqrtpd xmm6, xmm4
jmp 0x180039690
movaps xmm0, xmm4
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movaps xmm6, xmm0
mov rcx, qword [0x180706bc0]
lea rdx, str.com_craftrise_mj
mov rax, qword [rcx]
mov r8, qword [rax + 0x30]
call r8
mov rcx, qword [0x180706bc0]
lea r9, [0x1806fdaf4]
lea r8, [0x1806fdaf8]
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
mov rdx, rax
call r10
mov rcx, qword [0x180706bc0]
mov r8, rax
mov rdx, r14
call fcn.18003d320
comisd xmm14, xmm6
movaps xmm7, xmm0
jbe 0x180039a83
ucomisd xmm6, xmm13
jp 0x1800396fa
je 0x180039a83
ucomiss xmm7, xmm12
jp 0x180039706
je 0x180039a83
lea rcx, [rsp + 0x48]
call fcn.180039220
mov rcx, qword [0x180706bc0]
lea rdx, str.com_craftrise_client_S
mov rsi, qword [rax]
mov rax, qword [rcx]
sub rsi, qword [0x180707170]
call qword [rax + 0x30]
mov rcx, qword [0x180706bc0]
lea r9, str.__Lcom_craftrise_client_fa_
lea r8, [0x1806fd7b4]
mov qword [0x180706e58], rax
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
mov rdx, rax
call r10
mov rbx, rax
call fcn.18003d0a0
mov rcx, qword [0x180706bc0]
mov r8, rbx
mov rdx, rax
call fcn.180039190
mov rdx, r14
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x60]
call fcn.18003cc20
cmp rsi, 0x42c1d80
jl 0x180039a7e
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movaps xmm1, xmm7
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___float____ptr64]
mov rcx, rax
lea rdx, [0x1800018f0]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov r8d, 0x28
mov dword [rsp + 0x68], 0
lea rdx, [rsp + 0x68]
mov dword [rsp + 0x7c], 2
lea ecx, [r8 - 0x27]
call qword [sym.imp.USER32.dll_SendInput]
mov r8d, 0x28
mov dword [rsp + 0x7c], 4
lea rdx, [rsp + 0x68]
lea ecx, [r8 - 0x27]
call qword [sym.imp.USER32.dll_SendInput]
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
lea rcx, [rsp + 0x50]
call fcn.180039220
mov r13b, 1
mov rcx, qword [rax]
mov qword [0x180707170], rcx
call fcn.18003d0a0
mov rcx, qword [0x180706bc0]
lea rdx, str.com_craftrise_client_S
mov rax, qword [rcx]
call qword [rax + 0x30]
mov rcx, qword [0x180706bc0]
lea r9, str.__Lcom_craftrise_client_fa_
lea r8, [0x1806fd7b4]
mov qword [0x180706e58], rax
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
mov rdx, rax
call r10
mov rbx, rax
call fcn.18003d0a0
mov rcx, qword [0x180706bc0]
mov r8, rbx
mov rdx, rax
call fcn.180039190
mov ecx, 0x57
mov qword [rsp + 0x58], rax
mov rbx, rax
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180039a7e
mov rcx, qword [0x180706bc0]
lea rdx, str.com_craftrise_client_S
mov rax, qword [rcx]
call qword [rax + 0x30]
mov rcx, qword [0x180706bc0]
lea r9, str.__Lcom_craftrise_client_fa_
lea r8, [0x1806fd7b4]
mov qword [0x180706e58], rax
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x108]
mov rdx, rax
call r10
mov rsi, rax
call fcn.18003d0a0
mov rcx, qword [0x180706bc0]
mov r8, rsi
mov rdx, rax
call fcn.180039190
mov rcx, qword [0x180706bc0]
mov rdx, rbx
mov rax, qword [rcx]
mov r8, qword [rax + 0xf8]
call r8
mov rcx, qword [0x180706bc0]
lea r9, [0x1806fcc78]
lea r8, [0x1806fd940]
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x2f0]
mov rdx, rax
call r10
mov rcx, qword [0x180706bc0]
mov r8, rax
mov rdx, qword [rcx]
mov r9, qword [rdx + 0x330]
mov rdx, rbx
call r9
mov rcx, qword [0x180706bc0]
mov rdx, rbx
movaps xmm9, xmm0
mov rax, qword [rcx]
mov r8, qword [rax + 0xf8]
call r8
mov rcx, qword [0x180706bc0]
lea r9, [0x1806fcc78]
lea r8, [0x1806fcc84]
mov rdx, qword [rcx]
mov r10, qword [rdx + 0x2f0]
mov rdx, rax
call r10
mov rcx, qword [0x180706bc0]
mov r8, rax
mulss xmm9, xmm15
mov rdx, qword [rcx]
mov r9, qword [rdx + 0x330]
mov rdx, rbx
call r9
movaps xmm6, xmm0
movaps xmm0, xmm9
mulss xmm6, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm10, xmm0
movaps xmm0, xmm6
xorps xmm10, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm7, xmm0
movaps xmm0, xmm6
mulss xmm7, xmm10
mulss xmm7, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm6, xmm0
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm6, xmm0
mov ecx, 0x41
mulss xmm6, xmm8
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180039a2c
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm0, xmm8
addss xmm7, xmm0
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
mulss xmm0, xmm8
addss xmm6, xmm0
mov ecx, 0x44
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180039a5c
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
xorps xmm0, xmm11
mulss xmm10, xmm8
mulss xmm0, xmm8
addss xmm6, xmm10
addss xmm7, xmm0
xorps xmm1, xmm1
lea rcx, [rsp + 0x58]
cvtss2sd xmm1, xmm7
call fcn.18003c840
xorps xmm1, xmm1
lea rcx, [rsp + 0x58]
cvtss2sd xmm1, xmm6
call fcn.18003ca00
mov rbx, qword [rsp + 0x28]
inc r15d
cmp r15d, dword [rsp + 0x20]
jl 0x1800395e0
movaps xmm15, xmmword [rsp + 0xa0]
movaps xmm14, xmmword [rsp + 0xb0]
movaps xmm13, xmmword [rsp + 0xc0]
movaps xmm12, xmmword [rsp + 0xd0]
movaps xmm11, xmmword [rsp + 0xe0]
movaps xmm10, xmmword [rsp + 0xf0]
movaps xmm9, xmmword [rsp + 0x100]
movaps xmm8, xmmword [rsp + 0x110]
movaps xmm7, xmmword [rsp + 0x120]
movaps xmm6, xmmword [rsp + 0x130]
mov r14, qword [rsp + 0x180]
mov r13, qword [rsp + 0x178]
mov r15, qword [rsp + 0x140]
mov r12, qword [rsp + 0x170]
mov rcx, qword [rbp - 0x70]
xor rcx, rsp
call fcn.18003e830
add rsp, 0x148
pop rdi
pop rsi
pop rbx
pop rbp
ret