Function at 0x18023f7c5
Capabilities:
Log keystrokes via polling

Disassembly:
jmp 0x1804cee70
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
sub rsp, 0xfc0
lea rbp, [rsp + 0x20]
lea rdi, [rsp + 0x20]
mov ecx, 0x2c8
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0xfe8]
mov rax, qword [0x180ad8300]
xor rax, rbp
mov qword [rbp + 0xf90], rax
mov dword [rbp + 0xf34], 0
lea rcx, [0x180b2df95]
call fcn.18024a9d1
nop
mov rax, qword [rbp + 0xfc0]
movzx eax, byte [rax + 8]
test eax, eax
je 0x1804cef5c
mov ecx, 1
call qword [sym.imp.USER32.dll_GetKeyState]
cwde
and eax, 0x8000
test eax, eax
je 0x1804cef5c
movzx eax, byte [0x180ae5dd0]
test eax, eax
jne 0x1804cef5c
mov rax, qword [0x180ae5c70]
mov qword [rbp + 0xf48], rax
lea rdx, [rbp + 0xb38]
mov rcx, qword [rbp + 0xf48]
call fcn.18024928e
mov qword [rbp + 0xf50], rax
mov rax, qword [rbp + 0xf50]
mov qword [rbp + 0xf58], rax
mov eax, dword [rbp + 0xf34]
or eax, 1
mov dword [rbp + 0xf34], eax
mov rcx, qword [rbp + 0xf58]
call fcn.180242a24
movzx eax, al
test eax, eax
jne 0x1804cef5c
mov dword [rbp + 0xf60], 0
jmp 0x1804cef66
mov dword [rbp + 0xf60], 1
movzx eax, byte [rbp + 0xf60]
mov byte [rbp + 0xb14], al
mov eax, dword [rbp + 0xf34]
and eax, 1
test eax, eax
je 0x1804cef94
and dword [rbp + 0xf34], 0xfffffffe
lea rcx, [rbp + 0xb38]
call fcn.18024ac33
nop
movzx eax, byte [rbp + 0xb14]
test eax, eax
je 0x1804cefb8
mov rax, qword [rbp + 0xfc0]
add rax, 0x38
mov rcx, rax
call fcn.1802455fd
nop
jmp 0x1804d0406
mov eax, 0x104
mov eax, eax
mov ecx, dword [0x180ae757c]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
mov eax, dword [rax + rcx]
cmp dword [0x180ae5f78], eax
jle 0x1804cf02c
lea rcx, [0x180ae5f78]
call fcn.180249360
cmp dword [0x180ae5f78], 0xffffffff
jne 0x1804cf02c
mov dword [rbp + 0xb84], 0xa
lea rdx, [rbp + 0xb84]
lea rcx, [rbp + 0xb68]
call fcn.1802473f8
mov rdx, qword [rax]
lea rcx, [0x180ae5f68]
call fcn.18023e195
nop
lea rcx, [0x180ae5f78]
call fcn.180249987
nop
lea rcx, [0x180ae5f68]
call fcn.1802487f3
movzx eax, al
test eax, eax
jne 0x1804cf044
jmp 0x1804d0406
mov rax, qword [0x180ae5c70]
add rax, 0x18
mov qword [rbp + 0xf48], rax
lea rdx, [rbp + 8]
mov rcx, qword [rbp + 0xf48]
call fcn.1802433b1
nop
mov rax, qword [0x180ae5c70]
add rax, 0x18
mov rcx, rax
call fcn.180240b93
cvtss2sd xmm0, xmm0
movsd xmm1, qword [rbp + 0x10]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x10], xmm0
mov rax, qword [0x180ae5c70]
add rax, 0x18
mov qword [rbp + 0xf48], rax
lea rdx, [rbp + 0x38]
mov rcx, qword [rbp + 0xf48]
call fcn.1802454c7
nop
movsd xmm0, qword [rbp + 0x38]
call fcn.180245bf7
movsd qword [rbp + 0x68], xmm0
movsd xmm0, qword [rbp + 0x40]
movsd qword [rbp + 0x88], xmm0
mov edx, 0x20
lea rcx, [rbp + 0xa8]
call fcn.1802483a7
lea rcx, [rbp + 0xa8]
call fcn.180245d69
nop
xorps xmm0, xmm0
movsd qword [rbp + 0xe8], xmm0
xorps xmm0, xmm0
movsd qword [rbp + 0x108], xmm0
mov rax, qword [0x180ae5c70]
add rax, 0x70
mov qword [rbp + 0xf48], rax
lea rdx, [rbp + 0x148]
mov rcx, qword [rbp + 0xf48]
call fcn.1802443c9
nop
lea rax, [rbp + 0x148]
mov qword [rbp + 0x128], rax
mov rcx, qword [rbp + 0x128]
call fcn.18024b0b1
mov qword [rbp + 0x188], rax
mov rcx, qword [rbp + 0x128]
call fcn.1802445d6
mov qword [rbp + 0x1a8], rax
jmp 0x1804cf170
mov rax, qword [rbp + 0x188]
add rax, 0x20
mov qword [rbp + 0x188], rax
mov rax, qword [rbp + 0x1a8]
cmp qword [rbp + 0x188], rax
je 0x1804cf640
mov rax, qword [rbp + 0x188]
mov qword [rbp + 0x1c8], rax
mov rax, qword [rbp + 0x1c8]
add rax, 8
mov rcx, rax
call fcn.180242a24
movzx eax, al
test eax, eax
je 0x1804cf1f0
mov rax, qword [rbp + 0x1c8]
add rax, 8
mov qword [rbp + 0xf48], rax
mov rax, qword [0x180ae5c70]
add rax, 0x20
mov rdx, rax
mov rcx, qword [rbp + 0xf48]
call fcn.18024742f
movzx eax, al
test eax, eax
jne 0x1804cf1f0
mov rcx, qword [rbp + 0x1c8]
call fcn.18023ea9b
cmp eax, 0xa
jge 0x1804cf1f5
jmp 0x1804cf15e
mov edx, 0x18
lea rcx, [rbp + 0x1e8]
call fcn.18024a977
lea rdx, [rbp + 0x1e8]
mov rcx, qword [rbp + 0x1c8]
call fcn.18024aa35
nop
lea rcx, [rbp + 0x1e8]
call fcn.18024713c
movsd qword [rbp + 0xf48], xmm0
lea rcx, [rbp + 0x1e8]
call fcn.1802488ca
movsd qword [rbp + 0xf50], xmm0
lea rcx, [rbp + 0x1e8]
call fcn.18024713c
movsd xmm1, qword [rbp + 0xf50]
subsd xmm1, xmm0
movaps xmm0, xmm1
divsd xmm0, qword [0x180750810]
movsd xmm1, qword [rbp + 0xf48]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0xf58], xmm0
lea rcx, [rbp + 0x1e8]
call fcn.18024b3cc
movsd qword [rbp + 0xf60], xmm0
lea rcx, [rbp + 0x1e8]
call fcn.18023f11c
movsd qword [rbp + 0xf68], xmm0
lea rcx, [rbp + 0x1e8]
call fcn.18024b3cc
movsd xmm1, qword [rbp + 0xf68]
subsd xmm1, xmm0
movaps xmm0, xmm1
divsd xmm0, qword [0x180750810]
movsd xmm1, qword [rbp + 0xf60]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0xf70], xmm0
lea rcx, [rbp + 0x1e8]
call fcn.180247b5f
movsd qword [rbp + 0xf78], xmm0
lea rcx, [rbp + 0x1e8]
call fcn.180249946
movsd xmm1, qword [rbp + 0xf78]
subsd xmm0, xmm1
divsd xmm0, qword [0x180750810]
movsd qword [rbp + 0xf80], xmm0
lea rcx, [rbp + 0x1e8]
call fcn.180247b5f
movsd xmm1, qword [rbp + 0xf80]
addsd xmm0, xmm1
movsd qword [rbp + 0xf88], xmm0
movsd xmm3, qword [rbp + 0xf58]
movsd xmm2, qword [rbp + 0xf70]
movsd xmm1, qword [rbp + 0xf88]
lea rcx, [rbp + 0x218]
call fcn.180243cd5
nop
mov rax, qword [0x180ae5c70]
add rax, 0xa0
mov rcx, rax
call fcn.180244d4c
movaps xmm2, xmm0
lea rdx, [rbp + 0xba8]
mov rcx, qword [rbp + 0x1c8]
call fcn.18023eb09
mov r8, rax
lea rdx, [rbp + 0xbd8]
lea rcx, [rbp + 0x218]
call fcn.180243b4a
lea rcx, [rbp + 0x218]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0xe00]
lea rcx, [rbp + 0x218]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0xdc0]
lea rcx, [rbp + 8]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea r8, [rbp + 0xe00]
lea rdx, [rbp + 0xdc0]
lea rcx, [rbp + 0x248]
call fcn.18024adcd
nop
movsd xmm0, qword [rbp + 0x248]
subsd xmm0, qword [rbp + 0x68]
movsd qword [rbp + 0x278], xmm0
movsd xmm0, qword [rbp + 0x250]
subsd xmm0, qword [rbp + 0x88]
movsd qword [rbp + 0x298], xmm0
movsd xmm0, qword [rbp + 0x278]
call fcn.180245bf7
movsd qword [rbp + 0x278], xmm0
lea r8, [rbp + 8]
lea rdx, [rbp + 0xc08]
lea rcx, [rbp + 0x218]
call fcn.1802428e4
mov rcx, rax
call fcn.180248235
movsd qword [rbp + 0x2b8], xmm0
mov rax, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rax + 0x20]
comisd xmm0, xmmword [rbp + 0x2b8]
jb 0x1804cf5cd
movsd xmm0, qword [rbp + 0x2b8]
comisd xmm0, xmmword [0x18074a3f8]
jbe 0x1804cf5cd
movsd xmm0, qword [rbp + 0x278]
call fcn.18024b403
mov rax, qword [rbp + 0xfc0]
cvtss2sd xmm1, dword [rax + 0x24]
comisd xmm1, xmm0
jb 0x1804cf5cd
mov rax, qword [rbp + 0xfc0]
add rax, 0x38
mov rcx, rax
call fcn.180242a24
movzx eax, al
test eax, eax
je 0x1804cf551
mov rax, qword [rbp + 0xfc0]
add rax, 0x38
mov qword [rbp + 0xf48], rax
mov rax, qword [rbp + 0x1c8]
add rax, 8
mov rdx, rax
mov rcx, qword [rbp + 0xf48]
call fcn.18024742f
movzx eax, al
test eax, eax
je 0x1804cf551
mov rdx, qword [rbp + 0x1c8]
lea rcx, [rbp + 0xa8]
call fcn.18024352d
nop
movsd xmm0, qword [rbp + 0x278]
movsd qword [rbp + 0xe8], xmm0
movsd xmm0, qword [rbp + 0x298]
movsd qword [rbp + 0x108], xmm0
lea rcx, [rbp + 0x1e8]
call fcn.180242439
nop
jmp 0x1804cf640
lea rax, [rbp + 0xb0]
mov rcx, rax
call fcn.180242a24
movzx eax, al
test eax, eax
je 0x1804cf597
movsd xmm0, qword [rbp + 0x278]
call fcn.18024b403
movsd qword [rbp + 0xf48], xmm0
movsd xmm0, qword [rbp + 0xe8]
call fcn.18024b403
movsd xmm1, qword [rbp + 0xf48]
comisd xmm0, xmm1
jbe 0x1804cf5cb
mov rdx, qword [rbp + 0x1c8]
lea rcx, [rbp + 0xa8]
call fcn.18024352d
nop
movsd xmm0, qword [rbp + 0x278]
movsd qword [rbp + 0xe8], xmm0
movsd xmm0, qword [rbp + 0x298]
movsd qword [rbp + 0x108], xmm0
jmp 0x1804cf62e
mov rax, qword [rbp + 0xfc0]
add rax, 0x38
mov rcx, rax
call fcn.180242a24
movzx eax, al
test eax, eax
je 0x1804cf62e
mov rax, qword [rbp + 0xfc0]
add rax, 0x38
mov qword [rbp + 0xf48], rax
mov rax, qword [rbp + 0x1c8]
add rax, 8
mov rdx, rax
mov rcx, qword [rbp + 0xf48]
call fcn.18024742f
movzx eax, al
test eax, eax
je 0x1804cf62e
mov rax, qword [rbp + 0xfc0]
add rax, 0x38
mov rcx, rax
call fcn.1802455fd
nop
lea rcx, [rbp + 0x1e8]
call fcn.180242439
nop
jmp 0x1804cf15e
lea rcx, [rbp + 0x148]
call fcn.180248c53
nop
lea rax, [rbp + 0xb0]
mov rcx, rax
call fcn.180242a24
movzx eax, al
test eax, eax
je 0x1804d03f9
mov rax, qword [rbp + 0xfc0]
add rax, 0x30
lea rdx, [rbp + 0xa8]
mov rcx, rax
call fcn.18024352d
nop
mov rax, qword [0x180ae5c70]
add rax, 0xa0
mov rcx, rax
call fcn.180244d4c
movaps xmm2, xmm0
lea rdx, [rbp + 0x2d8]
lea rcx, [rbp + 0xa8]
call fcn.18023eb09
nop
mov edx, 0x18
lea rcx, [rbp + 0x308]
call fcn.18024a977
lea rdx, [rbp + 0x308]
lea rcx, [rbp + 0xa8]
call fcn.18024aa35
nop
lea rcx, [rbp + 0x308]
call fcn.1802488ca
movsd qword [rbp + 0xf48], xmm0
lea rcx, [rbp + 0x308]
call fcn.18024b3cc
movsd qword [rbp + 0xf50], xmm0
lea rcx, [rbp + 0x308]
call fcn.180247b5f
movsd qword [rbp + 0xf58], xmm0
movsd xmm3, qword [rbp + 0xf48]
movsd xmm2, qword [rbp + 0xf50]
movsd xmm1, qword [rbp + 0xf58]
lea rcx, [rbp + 0xc38]
call fcn.180243cd5
mov qword [rbp + 0xf60], rax
lea r8, [rbp + 0x2d8]
lea rdx, [rbp + 0x340]
mov rcx, qword [rbp + 0xf60]
call fcn.180243b4a
nop
lea rcx, [rbp + 0x308]
call fcn.18024713c
movsd qword [rbp + 0xf48], xmm0
lea rcx, [rbp + 0x308]
call fcn.18024b3cc
movsd qword [rbp + 0xf50], xmm0
lea rcx, [rbp + 0x308]
call fcn.180249946
movsd qword [rbp + 0xf58], xmm0
movsd xmm3, qword [rbp + 0xf48]
movsd xmm2, qword [rbp + 0xf50]
movsd xmm1, qword [rbp + 0xf58]
lea rcx, [rbp + 0xc68]
call fcn.180243cd5
mov qword [rbp + 0xf60], rax
lea r8, [rbp + 0x2d8]
lea rdx, [rbp + 0x358]
mov rcx, qword [rbp + 0xf60]
call fcn.180243b4a
nop
lea rcx, [rbp + 0x308]
call fcn.1802488ca
movsd qword [rbp + 0xf48], xmm0
lea rcx, [rbp + 0x308]
call fcn.18024b3cc
movsd qword [rbp + 0xf50], xmm0
lea rcx, [rbp + 0x308]
call fcn.180249946
movsd qword [rbp + 0xf58], xmm0
movsd xmm3, qword [rbp + 0xf48]
movsd xmm2, qword [rbp + 0xf50]
movsd xmm1, qword [rbp + 0xf58]
lea rcx, [rbp + 0xc98]
call fcn.180243cd5
mov qword [rbp + 0xf60], rax
lea r8, [rbp + 0x2d8]
lea rdx, [rbp + 0x370]
mov rcx, qword [rbp + 0xf60]
call fcn.180243b4a
nop
lea rcx, [rbp + 0x308]
call fcn.18024713c
movsd qword [rbp + 0xf48], xmm0
lea rcx, [rbp + 0x308]
call fcn.18024b3cc
movsd qword [rbp + 0xf50], xmm0
lea rcx, [rbp + 0x308]
call fcn.180247b5f
movsd qword [rbp + 0xf58], xmm0
movsd xmm3, qword [rbp + 0xf48]
movsd xmm2, qword [rbp + 0xf50]
movsd xmm1, qword [rbp + 0xf58]
lea rcx, [rbp + 0xcc8]
call fcn.180243cd5
mov qword [rbp + 0xf60], rax
lea r8, [rbp + 0x2d8]
lea rdx, [rbp + 0x388]
mov rcx, qword [rbp + 0xf60]
call fcn.180243b4a
nop
movsd xmm0, qword [0x180788ce8]
movsd qword [rbp + 0x3b8], xmm0
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0x3d8], xmm0
xorps xmm0, xmm0
movsd qword [rbp + 0x3f8], xmm0
xorps xmm0, xmm0
movsd qword [rbp + 0x418], xmm0
lea rax, [rbp + 0x340]
mov qword [rbp + 0x438], rax
mov rax, qword [rbp + 0x438]
mov qword [rbp + 0x458], rax
mov rax, qword [rbp + 0x438]
add rax, 0x60
mov qword [rbp + 0x478], rax
jmp 0x1804cf953
mov rax, qword [rbp + 0x458]
add rax, 0x18
mov qword [rbp + 0x458], rax
mov rax, qword [rbp + 0x478]
cmp qword [rbp + 0x458], rax
je 0x1804cfa4e
mov rax, qword [rbp + 0x458]
mov qword [rbp + 0x498], rax
lea rax, [rbp + 0xe80]
mov rdi, rax
mov rsi, qword [rbp + 0x498]
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0xe40]
lea rcx, [rbp + 8]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea r8, [rbp + 0xe80]
lea rdx, [rbp + 0xe40]
lea rcx, [rbp + 0x4b8]
call fcn.18024adcd
nop
movsd xmm0, qword [rbp + 0x4b8]
movsd qword [rbp + 0x4e8], xmm0
xorps xmm0, xmm0
comisd xmm0, xmmword [rbp + 0x4e8]
jbe 0x1804cf9f5
movsd xmm0, qword [rbp + 0x4e8]
addsd xmm0, qword [0x180787d18]
movsd qword [rbp + 0x4e8], xmm0
movsd xmm0, qword [rbp + 0x3b8]
comisd xmm0, xmmword [rbp + 0x4e8]
jbe 0x1804cfa17
movsd xmm0, qword [rbp + 0x4e8]
movsd qword [rbp + 0x3b8], xmm0
movsd xmm0, qword [rbp + 0x4e8]
comisd xmm0, xmmword [rbp + 0x3d8]
jbe 0x1804cfa39
movsd xmm0, qword [rbp + 0x4e8]
movsd qword [rbp + 0x3d8], xmm0
movsd xmm0, qword [rbp + 0x4c0]
movsd qword [rbp + 0x418], xmm0
jmp 0x1804cf941
movsd xmm0, qword [rbp + 0x3b8]
comisd xmm0, xmmword [0x180787d08]
jbe 0x1804cfa78
movsd xmm0, qword [rbp + 0x3b8]
subsd xmm0, qword [0x180787d18]
movsd qword [rbp + 0x3b8], xmm0
movsd xmm0, qword [rbp + 0x3d8]
comisd xmm0, xmmword [0x180787d08]
jbe 0x1804cfaa2
movsd xmm0, qword [rbp + 0x3d8]
subsd xmm0, qword [0x180787d18]
movsd qword [rbp + 0x3d8], xmm0
lea rcx, [rbp + 0x308]
call fcn.1802488ca
movsd qword [rbp + 0xf48], xmm0
lea rcx, [rbp + 0x308]
call fcn.18023f11c
movsd qword [rbp + 0xf50], xmm0
lea rcx, [rbp + 0x308]
call fcn.180249946
movsd qword [rbp + 0xf58], xmm0
movsd xmm3, qword [rbp + 0xf48]
movsd xmm2, qword [rbp + 0xf50]
movsd xmm1, qword [rbp + 0xf58]
lea rcx, [rbp + 0xcf8]
call fcn.180243cd5
mov qword [rbp + 0xf60], rax
lea r8, [rbp + 0x2d8]
lea rdx, [rbp + 0xd28]
mov rcx, qword [rbp + 0xf60]
call fcn.180243b4a
lea rcx, [rbp + 0xd88]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0xd58]
lea rcx, [rbp + 8]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0xf00]
lea rcx, [rbp + 0xd88]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rax, [rbp + 0xec0]
lea rcx, [rbp + 0xd58]
mov rdi, rax
mov rsi, rcx
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea r8, [rbp + 0xf00]
lea rdx, [rbp + 0xec0]
lea rcx, [rbp + 0x508]
call fcn.18024adcd
nop
movsd xmm0, qword [rbp + 0x510]
movsd qword [rbp + 0x3f8], xmm0
movsd xmm0, qword [rbp + 0x3d8]
subsd xmm0, qword [rbp + 0x3b8]
call fcn.180245bf7
call fcn.18024b403
divsd xmm0, qword [0x180750810]
movsd qword [rbp + 0x538], xmm0
movsd xmm0, qword [rbp + 0xe8]
call fcn.18024b403
subsd xmm0, qword [rbp + 0x538]
movsd qword [rbp + 0x558], xmm0
movsd xmm0, qword [rbp + 0xe8]
call fcn.18024b403
comisd xmm0, xmmword [rbp + 0x538]
jbe 0x1804cffbf
movsd xmm0, qword [0x180750810]
comisd xmm0, xmmword [rbp + 0x558]
jbe 0x1804cfc7e
movsd xmm0, qword [rbp + 0xe8]
comisd xmm0, xmmword [0x180727c58]
jbe 0x1804cfc48
movsd xmm0, qword [0x180727cb0]
movsd qword [rbp + 0xf48], xmm0
jmp 0x1804cfc58
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0xf48], xmm0
movsd xmm0, qword [rbp + 0x558]
mulsd xmm0, qword [rbp + 0xf48]
movsd xmm1, qword [rbp + 0x38]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x38], xmm0
jmp 0x1804cffbf
movsd xmm0, qword [rbp + 0x558]
comisd xmm0, xmmword [0x180788c98]
jb 0x1804cfd55
mov rax, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rax + 0x28]
movsd xmm1, qword [0x180788d08]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov rcx, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rcx + 0x28]
movsd xmm1, qword [0x180788cf8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si ecx, xmm0
mov r8d, eax
mov edx, ecx
lea rcx, [rbp + 0x578]
call fcn.1802406f2
nop
movsd xmm0, qword [rbp + 0xe8]
comisd xmm0, xmmword [0x180727c58]
jbe 0x1804cfd08
movsd xmm0, qword [0x180727cb0]
movsd qword [rbp + 0xf48], xmm0
jmp 0x1804cfd18
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0xf48], xmm0
lea rdx, [0x180adbca0]
lea rcx, [rbp + 0x578]
call fcn.18024361d
cvtsi2sd xmm0, eax
divsd xmm0, qword [0x180788cb8]
mulsd xmm0, qword [rbp + 0xf48]
movsd xmm1, qword [rbp + 0x38]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x38], xmm0
jmp 0x1804cffbf
movsd xmm0, qword [rbp + 0x558]
comisd xmm0, xmmword [0x180788c88]
jb 0x1804cfe2c
mov rax, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rax + 0x28]
movsd xmm1, qword [0x180788cf8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov rcx, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rcx + 0x28]
movsd xmm1, qword [0x180788cd8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si ecx, xmm0
mov r8d, eax
mov edx, ecx
lea rcx, [rbp + 0x598]
call fcn.1802406f2
nop
movsd xmm0, qword [rbp + 0xe8]
comisd xmm0, xmmword [0x180727c58]
jbe 0x1804cfddf
movsd xmm0, qword [0x180727cb0]
movsd qword [rbp + 0xf48], xmm0
jmp 0x1804cfdef
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0xf48], xmm0
lea rdx, [0x180adbca0]
lea rcx, [rbp + 0x598]
call fcn.18024361d
cvtsi2sd xmm0, eax
divsd xmm0, qword [0x180788cb8]
mulsd xmm0, qword [rbp + 0xf48]
movsd xmm1, qword [rbp + 0x38]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x38], xmm0
jmp 0x1804cffbf
movsd xmm0, qword [rbp + 0x558]
comisd xmm0, xmmword [0x180788c78]
jb 0x1804cff03
mov rax, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rax + 0x28]
movsd xmm1, qword [0x180788cc8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov rcx, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rcx + 0x28]
movsd xmm1, qword [0x180788cb8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si ecx, xmm0
mov r8d, eax
mov edx, ecx
lea rcx, [rbp + 0x5b8]
call fcn.1802406f2
nop
movsd xmm0, qword [rbp + 0xe8]
comisd xmm0, xmmword [0x180727c58]
jbe 0x1804cfeb6
movsd xmm0, qword [0x180727cb0]
movsd qword [rbp + 0xf48], xmm0
jmp 0x1804cfec6
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0xf48], xmm0
lea rdx, [0x180adbca0]
lea rcx, [rbp + 0x5b8]
call fcn.18024361d
cvtsi2sd xmm0, eax
divsd xmm0, qword [0x180788cb8]
mulsd xmm0, qword [rbp + 0xf48]
movsd xmm1, qword [rbp + 0x38]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x38], xmm0
jmp 0x1804cffbf
mov rax, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rax + 0x28]
movsd xmm1, qword [0x180788cb8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov rcx, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rcx + 0x28]
movsd xmm1, qword [0x180788ca8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si ecx, xmm0
mov r8d, eax
mov edx, ecx
lea rcx, [rbp + 0x5d8]
call fcn.1802406f2
nop
movsd xmm0, qword [rbp + 0xe8]
comisd xmm0, xmmword [0x180727c58]
jbe 0x1804cff77
movsd xmm0, qword [0x180727cb0]
movsd qword [rbp + 0xf48], xmm0
jmp 0x1804cff87
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0xf48], xmm0
lea rdx, [0x180adbca0]
lea rcx, [rbp + 0x5d8]
call fcn.18024361d
cvtsi2sd xmm0, eax
divsd xmm0, qword [0x180788cb8]
mulsd xmm0, qword [rbp + 0xf48]
movsd xmm1, qword [rbp + 0x38]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x38], xmm0
movsd xmm0, qword [rbp + 0x418]
subsd xmm0, qword [rbp + 0x3f8]
call fcn.18024b403
divsd xmm0, qword [0x180750810]
movsd qword [rbp + 0x5f8], xmm0
movsd xmm0, qword [rbp + 0x108]
call fcn.18024b403
subsd xmm0, qword [rbp + 0x5f8]
movsd qword [rbp + 0x558], xmm0
movsd xmm0, qword [rbp + 0x108]
call fcn.18024b403
comisd xmm0, xmmword [rbp + 0x5f8]
jbe 0x1804d03c9
movsd xmm0, qword [0x180750810]
comisd xmm0, xmmword [rbp + 0x558]
jbe 0x1804d0088
movsd xmm0, qword [rbp + 0x108]
comisd xmm0, xmmword [0x180727c58]
jbe 0x1804d0052
movsd xmm0, qword [0x180727cb0]
movsd qword [rbp + 0xf48], xmm0
jmp 0x1804d0062
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0xf48], xmm0
movsd xmm0, qword [rbp + 0x558]
mulsd xmm0, qword [rbp + 0xf48]
movsd xmm1, qword [rbp + 0x40]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x40], xmm0
jmp 0x1804d03c9
movsd xmm0, qword [rbp + 0x558]
comisd xmm0, xmmword [0x180788c98]
jb 0x1804d015f
mov rax, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rax + 0x2c]
movsd xmm1, qword [0x180788d08]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov rcx, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rcx + 0x2c]
movsd xmm1, qword [0x180788cf8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si ecx, xmm0
mov r8d, eax
mov edx, ecx
lea rcx, [rbp + 0x618]
call fcn.1802406f2
nop
movsd xmm0, qword [rbp + 0x108]
comisd xmm0, xmmword [0x180727c58]
jbe 0x1804d0112
movsd xmm0, qword [0x180727cb0]
movsd qword [rbp + 0xf48], xmm0
jmp 0x1804d0122
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0xf48], xmm0
lea rdx, [0x180adbca0]
lea rcx, [rbp + 0x618]
call fcn.18024361d
cvtsi2sd xmm0, eax
divsd xmm0, qword [0x180788cb8]
mulsd xmm0, qword [rbp + 0xf48]
movsd xmm1, qword [rbp + 0x40]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x40], xmm0
jmp 0x1804d03c9
movsd xmm0, qword [rbp + 0x558]
comisd xmm0, xmmword [0x180788c88]
jb 0x1804d0236
mov rax, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rax + 0x2c]
movsd xmm1, qword [0x180788cf8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov rcx, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rcx + 0x2c]
movsd xmm1, qword [0x180788cd8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si ecx, xmm0
mov r8d, eax
mov edx, ecx
lea rcx, [rbp + 0x638]
call fcn.1802406f2
nop
movsd xmm0, qword [rbp + 0x108]
comisd xmm0, xmmword [0x180727c58]
jbe 0x1804d01e9
movsd xmm0, qword [0x180727cb0]
movsd qword [rbp + 0xf48], xmm0
jmp 0x1804d01f9
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0xf48], xmm0
lea rdx, [0x180adbca0]
lea rcx, [rbp + 0x638]
call fcn.18024361d
cvtsi2sd xmm0, eax
divsd xmm0, qword [0x180788cb8]
mulsd xmm0, qword [rbp + 0xf48]
movsd xmm1, qword [rbp + 0x40]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x40], xmm0
jmp 0x1804d03c9
movsd xmm0, qword [rbp + 0x558]
comisd xmm0, xmmword [0x180788c78]
jb 0x1804d030d
mov rax, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rax + 0x2c]
movsd xmm1, qword [0x180788cc8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov rcx, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rcx + 0x2c]
movsd xmm1, qword [0x180788cb8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si ecx, xmm0
mov r8d, eax
mov edx, ecx
lea rcx, [rbp + 0x658]
call fcn.1802406f2
nop
movsd xmm0, qword [rbp + 0x108]
comisd xmm0, xmmword [0x180727c58]
jbe 0x1804d02c0
movsd xmm0, qword [0x180727cb0]
movsd qword [rbp + 0xf48], xmm0
jmp 0x1804d02d0
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0xf48], xmm0
lea rdx, [0x180adbca0]
lea rcx, [rbp + 0x658]
call fcn.18024361d
cvtsi2sd xmm0, eax
divsd xmm0, qword [0x180788cb8]
mulsd xmm0, qword [rbp + 0xf48]
movsd xmm1, qword [rbp + 0x40]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x40], xmm0
jmp 0x1804d03c9
mov rax, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rax + 0x2c]
movsd xmm1, qword [0x180788cb8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si eax, xmm0
mov rcx, qword [rbp + 0xfc0]
cvtss2sd xmm0, dword [rcx + 0x2c]
movsd xmm1, qword [0x180788ca8]
mulsd xmm1, xmm0
movaps xmm0, xmm1
cvttsd2si ecx, xmm0
mov r8d, eax
mov edx, ecx
lea rcx, [rbp + 0x678]
call fcn.1802406f2
nop
movsd xmm0, qword [rbp + 0x108]
comisd xmm0, xmmword [0x180727c58]
jbe 0x1804d0381
movsd xmm0, qword [0x180727cb0]
movsd qword [rbp + 0xf48], xmm0
jmp 0x1804d0391
movsd xmm0, qword [0x1806f1b88]
movsd qword [rbp + 0xf48], xmm0
lea rdx, [0x180adbca0]
lea rcx, [rbp + 0x678]
call fcn.18024361d
cvtsi2sd xmm0, eax
divsd xmm0, qword [0x180788cb8]
mulsd xmm0, qword [rbp + 0xf48]
movsd xmm1, qword [rbp + 0x40]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rbp + 0x40], xmm0
mov rax, qword [0x180ae5c70]
add rax, 0x18
mov qword [rbp + 0xf48], rax
lea rdx, [rbp + 0x38]
mov rcx, qword [rbp + 0xf48]
call fcn.18023faae
nop
lea rcx, [rbp + 0x308]
call fcn.180242439
nop
lea rcx, [rbp + 0xa8]
call fcn.18024a896
nop
lea rcx, [rbp - 0x20]
lea rdx, [0x180788380]
call fcn.18024867c
mov rcx, qword [rbp + 0xf90]
xor rcx, rbp
call fcn.180244135
lea rsp, [rbp + 0xfa0]
pop rdi
pop rsi
pop rbp
ret