Function at 0x180003c60
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 - 0x5f]
sub rsp, 0xf0
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
mov rax, qword [0x180066040]
xor rax, rsp
mov qword [rbp - 0x21], rax
xor r14d, r14d
mov dword [rsp + 0x20], r14d
mov eax, dword [0x1800b3914]
test eax, eax
jne 0x180003cd6
mov ecx, dword [0x1800b3910]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
setne byte [0x1800b38f0]
mov eax, dword [0x1800b3914]
cmp eax, 1
jne 0x180003cf9
mov ecx, dword [0x1800b3910]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x180003cf9
cmp byte [0x1800b38f0], r14b
sete byte [0x1800b38f0]
cmp byte [0x1800b38f0], r14b
je 0x1800046cd
xor r12d, r12d
mov rax, qword [0x1800b42a0]
sub rax, qword [0x1800b4298]
sar rax, 3
test rax, rax
je 0x1800046cd
xor r13d, r13d
movsd xmm10, qword [0x18005e228]
movss xmm9, dword [0x18005e320]
nop dword [rax]
mov rax, qword [0x1800b4350]
test rax, rax
je 0x1800046a9
cmp qword [rax + 0x278], 0
je 0x1800046a9
mov rcx, qword [0x1800b42a0]
mov rdx, qword [0x1800b4298]
sub rcx, rdx
sar rcx, 3
movsxd rax, r12d
cmp rax, rcx
ja 0x1800046a9
mov r15, qword [rdx + r13*8]
test r15, r15
je 0x1800046a9
mov rax, qword [r15 + 0x140]
test rax, rax
je 0x1800046a9
test byte [rax + 0x154], 0x20
je 0x1800046a9
lea rdx, [rbp - 0x59]
mov rcx, r15
call fcn.18004c7d0
movsd xmm6, qword [rax + 0x10]
mov edi, dword [rax + 0x18]
mov dword [rsp + 0x30], edi
mov rax, qword [0x1800b4350]
lea rdx, [rbp - 0x59]
mov rcx, qword [rax + 0x278]
call fcn.18004c7d0
mov rbx, rax
movaps xmm0, xmm6
subss xmm0, dword [rax + 0x10]
cvtss2sd xmm0, xmm0
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm7, xmm0
movaps xmm1, xmm6
shufps xmm1, xmm1, 0x55
movsd qword [rsp + 0x28], xmm6
subss xmm1, dword [rbx + 0x14]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movd xmm8, edi
movaps xmm1, xmm8
subss xmm1, dword [rbx + 0x18]
cvtps2pd xmm0, xmm1
movaps xmm1, xmm10
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm6, xmm7
addsd xmm6, xmm0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm6
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x180003e52
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x180003e5a
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
mov eax, dword [0x1800b3918]
lea ecx, [rax + rax*4]
add ecx, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jae 0x1800046a9
lea rdx, [rbp - 0x59]
mov rcx, r15
call fcn.18004bff0
mov rdi, rax
or r14d, 1
mov dword [rsp + 0x20], r14d
mov rax, qword [rax + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x180003e9b
mov rdi, qword [rdi]
cmp rax, 0xf
jb 0x180003f17
lea rsi, [rax + rdi]
lea r8, [rsi - 0xe]
sub r8, rdi
mov edx, 0x50
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x180003f17
nop dword [rax]
nop word [rax + rax]
mov r8d, 0xf
lea rdx, str.PropagandaFlyer
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180003f0a
inc rbx
lea r8, [rsi - 0xe]
sub r8, rbx
mov edx, 0x50
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x180003ed0
jmp 0x180003f17
sub rbx, rdi
cmp rbx, 0xffffffffffffffff
jne 0x18000417c
lea rdx, [rsp + 0x38]
mov rcx, r15
call fcn.18004bff0
mov rdi, rax
or r14d, 2
mov rax, qword [rax + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x180003f39
mov rdi, qword [rdi]
cmp rax, 0xc
jb 0x180003f9c
lea rsi, [rax + rdi]
lea r8, [rsi - 0xb]
sub r8, rdi
mov edx, 0x53
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x180003f9c
nop
mov r8d, 0xc
lea rdx, str.SO_Poster_01
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x18000416f
inc rbx
lea r8, [rsi - 0xb]
sub r8, rbx
mov edx, 0x53
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x180003f60
xor bl, bl
test r14b, 2
je 0x180003ff9
and r14d, 0xfffffffd
mov rdx, qword [rbp - 0x69]
cmp rdx, 0xf
jbe 0x180003fe4
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180003fdf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004713
call fcn.18004dae4
mov qword [rbp - 0x71], 0
mov qword [rbp - 0x69], 0xf
mov byte [rsp + 0x38], 0
test r14b, 1
je 0x18000403e
and r14d, 0xfffffffe
mov rdx, qword [rbp - 0x41]
cmp rdx, 0xf
jbe 0x18000403e
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180004039
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000471a
call fcn.18004dae4
test bl, bl
je 0x18000404e
addss xmm8, xmm9
movss dword [rsp + 0x30], xmm8
lea rdx, [rbp - 0x59]
mov rcx, r15
call fcn.18004bff0
mov rdi, rax
mov rax, qword [rax + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x18000406b
mov rdi, qword [rdi]
cmp rax, 0x13
jb 0x1800040dc
lea rsi, [rax + rdi]
lea r8, [rsi - 0x12]
sub r8, rdi
mov edx, 0x46
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x1800040dc
nop dword [rax]
nop word [rax + rax]
mov r8d, 0x13
lea rdx, str.FrequencyMatchPanel
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180004183
inc rbx
lea r8, [rsi - 0x12]
sub r8, rbx
mov edx, 0x46
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x1800040a0
mov rbx, 0xffffffffffffffff
mov rdx, qword [rbp - 0x41]
cmp rdx, 0xf
jbe 0x18000411e
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180004119
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004721
call fcn.18004dae4
cmp rbx, 0xffffffffffffffff
je 0x180004130
addss xmm8, xmm9
movss dword [rsp + 0x30], xmm8
lea r8, [rbp - 0x29]
lea rdx, [rsp + 0x28]
mov rcx, qword [0x1800b4350]
call fcn.18004d000
movzx eax, byte [r15 + 0x289]
movsd xmm6, qword [rbp - 0x29]
cmp al, 0x1a
jne 0x18000418b
cmp byte [0x1800b391d], 0
je 0x1800041b0
lea r9, [0x1800b3920]
lea r8, str._Quest_
jmp 0x1800041a6
sub rbx, rdi
cmp rbx, 0xffffffffffffffff
je 0x180003f9c
mov bl, 1
jmp 0x180003f9e
sub rbx, rdi
jmp 0x1800040e3
cmp al, 0x19
jne 0x1800041b0
cmp byte [0x1800b39e4], 0
je 0x1800041b0
lea r9, str.fff_333_
lea r8, str._Document_
movq rdx, xmm6
call fcn.180004750
lea rdx, [rbp - 0x59]
mov rcx, r15
call fcn.18004bff0
mov rdi, rax
or r14d, 4
mov rax, qword [rax + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x1800041d1
mov rdi, qword [rdi]
cmp rax, 0x13
jb 0x180004238
lea rsi, [rdi + rax]
lea r8, [rsi - 0x12]
sub r8, rdi
mov edx, 0x46
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x180004238
nop word [rax + rax]
mov r8d, 0x13
lea rdx, str.FrequencyMatchPanel
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180004296
inc rbx
lea r8, [rsi - 0x12]
sub r8, rbx
mov edx, 0x46
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x180004200
xor bl, bl
test r14b, 4
je 0x18000427f
and r14d, 0xfffffffb
mov rdx, qword [rbp - 0x41]
cmp rdx, 0xf
jbe 0x18000427f
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000427a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004728
call fcn.18004dae4
test bl, bl
je 0x1800042ac
lea r9, [0x1800b3934]
lea r8, str._Frequency_Panel_
jmp 0x18000469f
sub rbx, rdi
cmp rbx, 0xffffffffffffffff
je 0x180004238
cmp byte [0x1800b3930], 0
je 0x180004238
mov bl, 1
jmp 0x18000423a
lea rdx, [rbp - 0x59]
mov rcx, r15
call fcn.18004bff0
mov rdi, rax
or r14d, 8
mov dword [rsp + 0x20], r14d
mov rax, qword [rax + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x1800042d2
mov rdi, qword [rdi]
cmp rax, 0xf
jb 0x180004347
lea rsi, [rax + rdi]
lea r8, [rsi - 0xe]
sub r8, rdi
mov edx, 0x50
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x180004347
nop dword [rax + rax]
mov r8d, 0xf
lea rdx, str.PropagandaFlyer
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x18000433a
inc rbx
lea r8, [rsi - 0xe]
sub r8, rbx
mov edx, 0x50
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x180004300
jmp 0x180004347
sub rbx, rdi
cmp rbx, 0xffffffffffffffff
jne 0x180004492
lea rdx, [rsp + 0x38]
mov rcx, r15
call fcn.18004bff0
mov rdi, rax
or r14d, 0x10
mov rax, qword [rax + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x180004369
mov rdi, qword [rdi]
cmp rax, 0xc
jb 0x1800043cc
lea rsi, [rax + rdi]
lea r8, [rsi - 0xb]
sub r8, rdi
mov edx, 0x53
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
je 0x1800043cc
nop
mov r8d, 0xc
lea rdx, str.SO_Poster_01
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180004485
inc rbx
lea r8, [rsi - 0xb]
sub r8, rbx
mov edx, 0x53
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
mov rbx, rax
test rax, rax
jne 0x180004390
xor bl, bl
test r14b, 0x10
je 0x180004429
and r14d, 0xffffffef
mov rdx, qword [rbp - 0x69]
cmp rdx, 0xf
jbe 0x180004414
inc rdx
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000440f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000472f
call fcn.18004dae4
mov qword [rbp - 0x71], 0
mov qword [rbp - 0x69], 0xf
mov byte [rsp + 0x38], 0
test r14b, 8
je 0x18000446e
and r14d, 0xfffffff7
mov rdx, qword [rbp - 0x41]
cmp rdx, 0xf
jbe 0x18000446e
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180004469
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004736
call fcn.18004dae4
test bl, bl
je 0x1800044a6
lea r9, [0x1800b39d4]
lea r8, str._Poster_
jmp 0x18000469f
sub rbx, rdi
cmp rbx, 0xffffffffffffffff
je 0x1800043cc
cmp byte [0x1800b39d0], 0
je 0x1800043cc
mov bl, 1
jmp 0x1800043ce
lea rdx, [rbp - 0x59]
mov rcx, r15
call fcn.18004bff0
mov rbx, rax
or r14d, 0x20
mov rax, qword [rax + 0x10]
cmp qword [rbx + 0x18], 0xf
jbe 0x1800044c7
mov rbx, qword [rbx]
cmp rax, 0x12
jb 0x180004537
lea rdi, [rax + rbx]
lea r8, [rdi - 0x11]
sub r8, rbx
mov edx, 0x47
mov rcx, rbx
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x180004537
nop word [rax + rax]
movabs rcx, 0x6f746172656e6547
cmp qword [rax], rcx
jne 0x18000451b
movabs rcx, 0x697463656a624f72
cmp qword [rax + 8], rcx
jne 0x18000451b
cmp word [rax + 0x10], 0x6576
je 0x1800045a9
inc rax
lea r8, [rdi - 0x11]
sub r8, rax
mov edx, 0x47
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x1800044f0
xor bl, bl
test r14b, 0x20
je 0x18000457e
and r14d, 0xffffffdf
mov rdx, qword [rbp - 0x41]
cmp rdx, 0xf
jbe 0x18000457e
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180004579
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18000473d
call fcn.18004dae4
test bl, bl
je 0x1800045c6
mov rcx, qword [r15 + 0x140]
call fcn.18004cb30
test al, al
je 0x1800046a9
lea r9, [0x1800b395c]
lea r8, str._Generator_
jmp 0x18000469f
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x180004537
cmp byte [0x1800b3958], 0
je 0x180004537
mov bl, 1
jmp 0x180004539
call fcn.1800014b0
test rax, rax
je 0x1800046a9
mov rcx, qword [r15 + 0x10]
test rcx, rcx
je 0x1800046a9
cmp rcx, rax
je 0x1800045f4
mov rcx, qword [rcx + 0x40]
test rcx, rcx
jne 0x1800045e1
jmp 0x1800046a9
mov rcx, r15
call fcn.18004d370
test al, al
jne 0x1800046a9
movzx eax, byte [r15 + 0x5cc]
cmp al, 0xa
jne 0x18000462d
cmp byte [0x1800b396c], 0
je 0x1800046a9
lea r9, [0x1800b3970]
lea r8, str._Acid_Bottle_
jmp 0x18000469f
cmp al, 0xc
jne 0x18000464a
cmp byte [0x1800b3944], 0
je 0x1800046a9
lea r9, [0x1800b3948]
lea r8, str._Gas_Canister_
jmp 0x18000469f
cmp al, 7
jne 0x180004667
cmp byte [0x1800b3980], 0
je 0x1800046a9
lea r9, [0x1800b3984]
lea r8, str._Child_Mannequin_
jmp 0x18000469f
cmp al, 4
jne 0x180004684
cmp byte [0x1800b3994], 0
je 0x1800046a9
lea r9, [0x1800b3998]
lea r8, str._Diaporama_Wheel_
jmp 0x18000469f
cmp al, 5
jne 0x1800046a9
cmp byte [0x1800b39bc], 0
je 0x1800046a9
lea r9, [0x1800b39c0]
lea r8, str._Acid_Bucket_
movq rdx, xmm6
call fcn.180004750
inc r12d
inc r13
mov rcx, qword [0x1800b42a0]
sub rcx, qword [0x1800b4298]
sar rcx, 3
movsxd rax, r12d
cmp rax, rcx
jb 0x180003d40
mov rcx, qword [rbp - 0x21]
xor rcx, rsp
call fcn.18004d710
lea r11, [rsp + 0xf0]
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]
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]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
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
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3