Function at 0x180081750
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 - 0x328]
sub rsp, 0x400
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
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x1800b7040]
xor rax, rsp
mov qword [rbp + 0x250], rax
movss xmm11, dword [0x1803d9c70]
mulss xmm11, dword [0x1800aab98]
movss dword [rsp + 0x38], xmm11
movss xmm9, dword [0x1803d9c74]
mulss xmm9, dword [0x1800aab98]
movss dword [rsp + 0x30], xmm9
movd xmm8, dword [0x180338e1c]
cvtdq2ps xmm8, xmm8
mov esi, dword [0x1803d9a14]
mov eax, esi
mov rcx, qword gs:[0x58]
mov edx, 4
mov r14d, edx
mov r15, qword [rcx + rax*8]
mov eax, dword [rdx + r15]
cmp dword [0x180410114], eax
jle 0x180081860
lea rcx, [0x180410114]
call fcn.180091038
cmp dword [0x180410114], 0xffffffff
jne 0x180081860
mov ecx, 0x3a1e5c61
call fcn.18005e4d0
mov qword [0x1804101e0], rax
lea rcx, [0x180410114]
call fcn.180090fcc
mov rax, qword [0x1804101e0]
mov rcx, qword [rax + 0xb8]
mov rdx, qword [rcx]
mov rcx, qword [0x1803d9b48]
add rcx, rdx
xor r12d, r12d
movabs rdi, 0x7fffffff0000
cmp rcx, 0x40000
jbe 0x18008189e
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x18008189e
mov eax, dword [rcx]
jmp 0x1800818a1
mov eax, r12d
shr eax, 8
test al, 1
je 0x180082f3a
call fcn.1800663f0
mov rbx, rax
test rax, rax
jne 0x1800818be
mov rax, r12
jmp 0x180081907
mov eax, dword [r14 + r15]
cmp dword [0x18040ffdc], eax
jle 0x1800818fc
lea rcx, [0x18040ffdc]
call fcn.180091038
cmp dword [0x18040ffdc], 0xffffffff
jne 0x1800818fc
mov ecx, 0xae00109b
call fcn.180060450
mov qword [0x18040fba8], rax
lea rcx, [0x18040ffdc]
call fcn.180090fcc
mov rax, qword [0x18040fba8]
mov rax, qword [rbx + rax]
mov qword [rsp + 0x50], rax
mov r13d, r12d
mov rax, qword [rax + 0x28]
cmp dword [rax + 0x10], r12d
jle 0x180081d06
mov r12d, 0x20
mov rax, qword [rax + 0x18]
mov rbx, qword [r12 + rax]
test rbx, rbx
je 0x180081ce3
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x180081ce3
mov rsi, qword [rax + 0x30]
test rsi, rsi
je 0x180081ce3
lea rcx, [rsi + 0x60]
cmp rcx, 0x40000
jbe 0x180081ce3
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180081ce3
mov rdi, qword [rcx]
test rdi, rdi
je 0x180081cd9
mov eax, dword [r14 + r15]
cmp dword [0x18040ff2c], eax
jle 0x1800819b6
lea rcx, [0x18040ff2c]
call fcn.180091038
cmp dword [0x18040ff2c], 0xffffffff
jne 0x1800819b6
mov ecx, 0x33f7a6a3
call fcn.180060450
mov qword [0x18040fce8], rax
lea rcx, [0x18040ff2c]
call fcn.180090fcc
mov rax, qword [0x18040fce8]
cmp byte [rax + rbx], 0
jne 0x180081cd9
mov eax, dword [r14 + r15]
cmp dword [0x18040ff9c], eax
jle 0x180081a08
lea rcx, [0x18040ff9c]
call fcn.180091038
cmp dword [0x18040ff9c], 0xffffffff
jne 0x180081a08
mov ecx, 0x8bb6774c
call fcn.18005ed40
mov rcx, qword [rax]
mov qword [0x18040ff70], rcx
lea rcx, [0x18040ff9c]
call fcn.180090fcc
mov rax, qword [0x18040ff70]
mov rcx, rbx
call rax
test rax, rax
je 0x180081cd9
lea rdx, str.Local
mov rcx, rdi
call qword [sym.imp.VCRUNTIME140.dll_strstr]
test rax, rax
jne 0x180081cd9
mov rcx, rbx
call fcn.180066460
test al, al
je 0x180081ccb
mov rcx, qword [0x1803d9b58]
add rcx, rbx
movabs rdi, 0x7fffffff0000
cmp rcx, 0x40000
jbe 0x180081aff
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180081ac2
mov rdx, qword [rcx]
add rdx, 0x2d8
cmp rdx, 0x40000
jbe 0x180081ac2
lea rax, [rdx + 1]
cmp rax, rdi
jae 0x180081ac2
cmp byte [rdx], 0
je 0x180081ac2
cmp byte [0x1803d9c9f], 0
jne 0x180081ac2
cmp byte [0x1803d9ca4], 0
jne 0x180081ac2
cmp byte [0x1803d9c9e], 0
jne 0x180081ac2
cmp byte [0x1803d9ca5], 0
jne 0x180081ac2
cmp byte [0x1803d9c9d], 0
je 0x180081ce3
cmp rcx, 0x40000
jbe 0x180081aff
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180081aff
mov rcx, qword [rcx]
add rcx, 0x2d8
cmp rcx, 0x40000
jbe 0x180081aff
lea rax, [rcx + 1]
cmp rax, rdi
jae 0x180081aff
cmp byte [rcx], 0
je 0x180081aff
mov rcx, rbx
call fcn.18007e440
jmp 0x180081b07
mov rcx, rbx
call fcn.18007c870
mov rcx, qword [0x1803d9b48]
add rcx, rbx
cmp rcx, 0x40000
jbe 0x180081b27
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x180081b27
mov edx, dword [rcx]
jmp 0x180081b29
xor edx, edx
shr edx, 6
and dl, 1
cmp byte [0x18040b090], 0
je 0x180081b5b
cmp rcx, 0x40000
jbe 0x180081b4e
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x180081b4e
mov eax, dword [rcx]
jmp 0x180081b50
xor eax, eax
shr eax, 4
test al, 1
jne 0x180081ce3
test dl, dl
je 0x180081b6c
cmp byte [0x18040b091], 0
jne 0x180081ce3
mov rcx, qword [0x1803d9b58]
add rcx, rbx
cmp rcx, 0x40000
jbe 0x180081bb6
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180081bb6
mov rcx, qword [rcx]
add rcx, 0x2d8
cmp rcx, 0x40000
jbe 0x180081bb6
lea rax, [rcx + 1]
cmp rax, rdi
jae 0x180081bb6
cmp byte [rcx], 0
je 0x180081bb6
cmp byte [0x18040b092], 0
jne 0x180081ce3
mov eax, dword [0x1803d9a14]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov ecx, dword [r14 + rax]
cmp dword [0x180410114], ecx
jle 0x180081c07
lea rcx, [0x180410114]
call fcn.180091038
cmp dword [0x180410114], 0xffffffff
jne 0x180081c07
mov ecx, 0x3a1e5c61
call fcn.18005e4d0
mov qword [0x1804101e0], rax
lea rcx, [0x180410114]
call fcn.180090fcc
mov rax, qword [0x1804101e0]
mov rcx, qword [rax + 0xb8]
mov rdx, qword [rcx]
mov rax, qword [0x1803d9b68]
mov ecx, dword [rax + rdx]
test ecx, ecx
je 0x180081c38
cmp dword [rax + rbx], ecx
jne 0x180081c38
cmp byte [0x18040b093], 0
jne 0x180081ce3
mov rcx, rbx
call fcn.180078340
movaps xmm7, xmm0
comiss xmm8, xmm7
jbe 0x180081ce3
mov eax, dword [r14 + r15]
cmp dword [0x18040fae8], eax
jle 0x180081c8b
lea rcx, [0x18040fae8]
call fcn.180091038
cmp dword [0x18040fae8], 0xffffffff
jne 0x180081c8b
mov ecx, 0x1f15eb59
call fcn.180060450
mov qword [0x18040faf8], rax
lea rcx, [0x18040fae8]
call fcn.180090fcc
mov rax, qword [0x18040faf8]
cmp dword [rax + rbx], 0
jne 0x180081ce3
mov rcx, rbx
call fcn.180078340
movaps xmm6, xmm0
mov rcx, qword [0x1803d9c50]
call fcn.180078340
comiss xmm0, xmm6
ja 0x180081cbe
cmp qword [0x1803d9c50], 0
jne 0x180081ce3
movaps xmm8, xmm7
mov qword [0x1803d9c50], rbx
jmp 0x180081ce3
mov r8, rdi
mov rdx, rbx
mov rcx, rsi
call fcn.180080cd0
movabs rdi, 0x7fffffff0000
inc r13d
add r12, 8
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x28]
cmp r13d, dword [rax + 0x10]
jl 0x180081923
mov esi, dword [0x1803d9a14]
xor r12d, r12d
mov rbx, qword [0x1803d9c50]
mov rcx, rbx
call fcn.180078340
movd xmm1, dword [0x180338e1c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x180081d36
cmp qword [0x1803d9c50], 0
je 0x180081d36
mov qword [0x1803d9c50], r12
xorps xmm10, xmm10
mov r14d, 4
test rbx, rbx
je 0x180082364
mov edx, esi
mov rax, qword gs:[0x58]
mov rax, qword [rax + rdx*8]
mov ecx, dword [r14 + rax]
cmp dword [0x18040fae8], ecx
jle 0x180081d96
lea rcx, [0x18040fae8]
call fcn.180091038
cmp dword [0x18040fae8], 0xffffffff
jne 0x180081d96
mov ecx, 0x1f15eb59
call fcn.180060450
mov qword [0x18040faf8], rax
lea rcx, [0x18040fae8]
call fcn.180090fcc
mov rax, qword [0x18040faf8]
cmp dword [rax + rbx], 0
je 0x180081daa
mov qword [0x1803d9c50], r12
mov r8d, 0x2f
lea rdx, [rbp - 0x80]
mov rcx, rbx
call fcn.1800666f0
movss xmm0, dword [rax]
ucomiss xmm0, xmm10
jp 0x180081dc8
je 0x180081e07
mov r8d, 0x2f
lea rdx, [rbp - 0x38]
mov rcx, rbx
call fcn.1800666f0
movss xmm0, dword [rax + 4]
ucomiss xmm0, xmm10
jp 0x180081de7
je 0x180081e07
mov r8d, 0x2f
lea rdx, [rsp + 0x70]
mov rcx, rbx
call fcn.1800666f0
movss xmm0, dword [rax + 8]
ucomiss xmm0, xmm10
jp 0x180081e0e
jne 0x180081e0e
mov qword [0x1803d9c50], r12
mov rcx, qword [0x1803d9b58]
add rcx, rbx
cmp rcx, 0x40000
jbe 0x180081e5b
lea rax, [rcx + 8]
cmp rax, rdi
jae 0x180081e5b
mov rcx, qword [rcx]
add rcx, 0x2d8
cmp rcx, 0x40000
jbe 0x180081e5b
lea rax, [rcx + 1]
cmp rax, rdi
jae 0x180081e5b
cmp byte [rcx], 0
je 0x180081e5b
cmp byte [0x18040b092], 0
je 0x180081e5b
mov qword [0x1803d9c50], r12
mov rcx, qword [0x1803d9b48]
add rcx, rbx
cmp rcx, 0x40000
jbe 0x180081e7b
lea rax, [rcx + 4]
cmp rax, rdi
jae 0x180081e7b
mov eax, dword [rcx]
jmp 0x180081e7e
mov eax, r12d
shr eax, 4
test al, 1
je 0x180081e95
cmp byte [0x18040b090], 0
je 0x180081e95
mov qword [0x1803d9c50], r12
mov edx, esi
mov rax, qword gs:[0x58]
mov rax, qword [rax + rdx*8]
mov ecx, dword [r14 + rax]
cmp dword [0x180410114], ecx
jle 0x180081ee2
lea rcx, [0x180410114]
call fcn.180091038
cmp dword [0x180410114], 0xffffffff
jne 0x180081ee2
mov ecx, 0x3a1e5c61
call fcn.18005e4d0
mov qword [0x1804101e0], rax
lea rcx, [0x180410114]
call fcn.180090fcc
mov rax, qword [0x1804101e0]
mov rcx, qword [rax + 0xb8]
mov rdx, qword [rcx]
mov rax, qword [0x1803d9b68]
mov ecx, dword [rax + rdx]
test ecx, ecx
je 0x180081f16
cmp dword [rax + rbx], ecx
jne 0x180081f16
cmp byte [0x18040b093], 0
je 0x180081f16
mov qword [0x1803d9c50], r12
cmp byte [0x1803d9c0d], 0
je 0x1800822e6
cmp byte [0x1803d9afd], 0
je 0x1800820a3
movss xmm0, dword [0x18040b098]
ucomiss xmm0, xmm10
jp 0x180081f64
jne 0x180081f64
movss xmm0, dword [0x18040b09c]
ucomiss xmm0, xmm10
jp 0x180081f64
jne 0x180081f64
movss xmm0, dword [0x18040b0a0]
ucomiss xmm0, xmm10
jp 0x180081f64
je 0x1800820a3
cmp qword [0x1803d9c50], 0
je 0x1800820a3
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
movdqa xmm1, xmmword [0x1800aaeb0]
movdqu xmmword [rbp - 8], xmm1
mov byte [rbp - 0x18], 0
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rbp + 0x50]
call sub.VCRUNTIME140.dll_memset
mov edx, esi
mov rax, qword gs:[0x58]
mov rax, qword [rax + rdx*8]
mov ecx, dword [r14 + rax]
cmp dword [0x18041011c], ecx
jle 0x180081fe8
lea rcx, [0x18041011c]
call fcn.180091038
cmp dword [0x18041011c], 0xffffffff
jne 0x180081fe8
mov ecx, 0x3f7234d0
call fcn.180060450
mov qword [0x18040fac0], rax
lea rcx, [0x18041011c]
call fcn.180090fcc
mov rax, qword [0x18040fac0]
mov r8, qword [rax + rbx]
add r8, 0x14
lea rdx, str._ls_manipulated
lea rcx, [rbp + 0x50]
call fcn.180088710
lea rdx, [rbp + 0x50]
lea rcx, [rbp - 0x18]
call fcn.18000a660
lea r9, [rbp - 0x18]
cmp qword [rbp], 0xf
cmova r9, qword [rbp - 0x18]
movaps xmm0, xmmword [0x1800aafa0]
movaps xmmword [rbp - 0x60], xmm0
movaps xmm1, xmm9
subss xmm1, dword [0x1800aad28]
lea r8, [rbp - 0x60]
movd edx, xmm1
movaps xmm0, xmm11
movd ecx, xmm0
call fcn.180078420
nop
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe 0x18008208d
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180082088
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180082088
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009145c
movdqa xmm0, xmmword [0x1800aaeb0]
movdqu xmmword [rbp - 8], xmm0
mov byte [rbp - 0x18], 0
jmp 0x1800822e6
xorps xmm0, xmm0
movups xmmword [rbp + 8], xmm0
movdqa xmm1, xmmword [0x1800aaeb0]
movdqu xmmword [rbp + 0x18], xmm1
mov byte [rbp + 8], 0
mov ecx, esi
mov rax, qword gs:[0x58]
mov rsi, qword [rax + rcx*8]
mov eax, dword [r14 + rsi]
cmp dword [0x18041011c], eax
jle 0x180082108
lea rcx, [0x18041011c]
call fcn.180091038
cmp dword [0x18041011c], 0xffffffff
jne 0x180082108
mov ecx, 0x3f7234d0
call fcn.180060450
mov qword [0x18040fac0], rax
lea rcx, [0x18041011c]
call fcn.180090fcc
mov rax, qword [0x18040fac0]
mov rdx, qword [rax + rbx]
add rdx, 0x14
lea rcx, [rbp - 0x48]
call fcn.1800871e0
nop
mov rdx, qword [rax]
xorps xmm0, xmm0
movups xmmword [rbp + 0x28], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x38], xmm1
mov rdi, 0xffffffffffffffff
mov r8, rdi
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x180082140
lea rcx, [rbp + 0x28]
call fcn.18000a790
nop
mov rdx, qword [rbp - 0x48]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x180082171
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
xor edx, edx
mov r8d, pe_nt_image_headers64
lea rcx, [rbp + 0x150]
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [r14 + rsi]
cmp dword [0x18041011c], ecx
jle 0x1800821c3
lea rcx, [0x18041011c]
call fcn.180091038
cmp dword [0x18041011c], 0xffffffff
jne 0x1800821c3
mov ecx, 0x3f7234d0
call fcn.180060450
mov qword [0x18040fac0], rax
lea rcx, [0x18041011c]
call fcn.180090fcc
mov rax, qword [0x18040fac0]
mov rdx, qword [rax + rbx]
add rdx, 0x14
lea rcx, [rbp - 0x40]
call fcn.1800871e0
mov rdx, qword [rax]
lea rcx, [rbp + 0x150]
call fcn.180088710
mov rdx, qword [rbp - 0x40]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x180082205
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 8]
call fcn.18000a660
lea r9, [rbp + 8]
cmp qword [rbp + 0x20], 0xf
cmova r9, qword [rbp + 8]
movaps xmm0, xmmword [0x1800ab280]
movaps xmmword [rsp + 0x40], xmm0
movaps xmm1, xmm9
subss xmm1, dword [0x1800aad28]
lea r8, [rsp + 0x40]
movd edx, xmm1
movaps xmm0, xmm11
movd ecx, xmm0
call fcn.180078420
nop
mov rdx, qword [rbp + 0x40]
cmp rdx, 0xf
jbe 0x180082291
inc rdx
mov rcx, qword [rbp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008228b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18008228b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009145c
nop
mov rdx, qword [rbp + 0x20]
cmp rdx, 0xf
jbe 0x1800822cf
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800822ca
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800822ca
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18009145c
movdqa xmm0, xmmword [0x1800aaeb0]
movdqu xmmword [rbp + 0x18], xmm0
mov byte [rbp + 8], 0
mov esi, dword [0x1803d9a14]
cmp byte [0x1803d9ad5], 0
je 0x180082364
cmp byte [0x1803d9ae6], 0
je 0x180082364
mov r8d, 0x2f
lea rdx, [rbp - 0x28]
mov rcx, rbx
call fcn.1800666f0
movaps xmm0, xmmword [0x1800ab280]
mov ecx, dword [0x18040fe80]
test ecx, ecx
je 0x180082325
sub ecx, 1
je 0x180082325
cmp ecx, 1
jne 0x180082364
movdqa xmmword [rsp + 0x40], xmm0
movsd xmm0, qword [rbp - 0x28]
mov eax, dword [rbp - 0x20]
movss dword [rsp + 0x20], xmm10
movsd qword [rsp + 0x60], xmm0
mov dword [rsp + 0x68], eax
movss xmm3, dword [0x1800aab28]
lea r8, [rsp + 0x40]
movss xmm1, dword [0x1800aac80]
lea rcx, [rsp + 0x60]
call qword [0x18040fe78]
movss xmm14, dword [0x1800aabe0]
cmp byte [0x1803d9cb8], 0
je 0x180082435
movss xmm2, dword [0x1803d9d04]
divss xmm2, dword [0x1803d9c48]
ucomiss xmm2, xmm10
jp 0x1800823ae
jne 0x1800823ae
movss xmm0, dword [0x1803d9c44]
divss xmm0, dword [0x1803d9c08]
ucomiss xmm0, xmm10
jp 0x1800823ae
je 0x180082435
movss xmm6, dword [0x1800aacc0]
movaps xmm8, xmm11
subss xmm8, dword [0x1800aad68]
movaps xmm4, xmm9
subss xmm4, dword [0x1800aada8]
movaps xmm3, xmm14
movss xmm0, dword [0x1800aad90]
unpcklps xmm0, xmm6
movq rdx, xmm0
movaps xmm1, xmm8
unpcklps xmm1, xmm4
movq rcx, xmm1
call fcn.180079870
movss xmm2, dword [0x1803d9c44]
divss xmm2, dword [0x1803d9c08]
movaps xmm4, xmm9
subss xmm4, dword [0x1800aadac]
movaps xmm3, xmm14
movss xmm0, dword [0x1800aad90]
unpcklps xmm0, xmm6
movq rdx, xmm0
movaps xmm1, xmm8
unpcklps xmm1, xmm4
movq rcx, xmm1
call fcn.180079870
movss xmm11, dword [0x1800aad84]
movss xmm12, dword [0x1800aac50]
movss xmm15, dword [0x1800aab14]
movss xmm8, dword [0x1800aad3c]
cmp byte [0x1803d9bf5], 0
je 0x180082755
mov ecx, dword [0x1803d9ce0]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180082755
mov ecx, esi
mov rax, qword gs:[0x58]
mov rdi, qword [rax + rcx*8]
mov eax, r14d
mov ecx, dword [rax + rdi]
cmp dword [0x180410114], ecx
jle 0x1800824ca
lea rcx, [0x180410114]
call fcn.180091038
cmp dword [0x180410114], 0xffffffff
jne 0x1800824ca
mov ecx, 0x3a1e5c61
call fcn.18005e4d0
mov qword [0x1804101e0], rax
lea rcx, [0x180410114]
call fcn.180090fcc
mov rax, qword [0x1804101e0]
mov rcx, qword [rax + 0xb8]
mov rbx, qword [rcx]
mov dword [rbp - 0x74], 0
test rbx, rbx
jne 0x1800824ed
lea rbx, [rbp - 0x74]
jmp 0x180082534
mov eax, r14d
mov ecx, dword [rax + rdi]
cmp dword [0x18040fd28], ecx
jle 0x18008252d
lea rcx, [0x18040fd28]
call fcn.180091038
cmp dword [0x18040fd28], 0xffffffff
jne 0x18008252d
mov ecx, 0xc566d10
call fcn.180060450
mov qword [0x18040fb90], rax
lea rcx, [0x18040fd28]
call fcn.180090fcc
add rbx, qword [0x18040fb90]
mov ecx, dword [0x1804102f0]
test ecx, ecx
je 0x180082550
sub ecx, 1
je 0x180082550
cmp ecx, 1
je 0x180082550
movss xmm1, dword [rsp + 0x30]
jmp 0x180082559
call qword [0x1804102e8]
movaps xmm1, xmm0
subss xmm1, dword [rbx]
divss xmm1, dword [0x1800aabc0]
mulss xmm1, xmm8
addss xmm1, xmm14
divss xmm1, xmm8
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
movsd xmm9, qword [0x1800aac08]
comisd xmm9, xmm0
jbe 0x18008258f
movaps xmm1, xmm10
ucomiss xmm1, xmm10
jp 0x18008259b
je 0x18008275e
movaps xmm0, xmm1
addss xmm0, xmm1
movss xmm2, dword [0x1800aab98]
comiss xmm2, xmm1
jbe 0x1800825be
mulss xmm0, xmm11
movaps xmm15, xmm0
movaps xmm13, xmm11
jmp 0x1800825d0
movaps xmm15, xmm11
movaps xmm13, xmm12
subss xmm13, xmm0
mulss xmm13, xmm11
movaps xmm9, xmm14
minss xmm9, xmm1
movss xmm8, dword [0x1803d9c74]
mulss xmm8, xmm2
movss xmm7, dword [0x1803d9c70]
mulss xmm7, xmm2
subss xmm8, xmm14
movss dword [rsp + 0x50], xmm7
movss dword [rsp + 0x54], xmm8
mov dword [rsp + 0x28], 0x30
movss dword [rsp + 0x20], xmm10
movss xmm3, dword [0x1800aac8c]
movss xmm6, dword [0x1800aae58]
movaps xmm2, xmm6
lea rdx, [rsp + 0x50]
mov rcx, qword [0x18040fc70]
call fcn.1800323c0
movaps xmm0, xmmword [0x1800ab030]
movups xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call fcn.18000dca0
mov rbx, qword [0x18040fc70]
movss xmm0, dword [0x1800aac88]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], r12d
mov r9d, eax
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.180030b40
mov dword [rbx + 0x78], r12d
movss dword [rbp - 0x50], xmm7
movss dword [rbp - 0x4c], xmm8
cvtps2pd xmm0, xmm9
mulsd xmm0, qword [0x1800aac58]
cvtpd2ps xmm3, xmm0
mov dword [rsp + 0x28], 0x30
movss dword [rsp + 0x20], xmm10
movaps xmm2, xmm6
lea rdx, [rbp - 0x50]
mov rcx, qword [0x18040fc70]
call fcn.1800323c0
cvttss2si eax, xmm15
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss xmm15, dword [0x1800aab14]
mulss xmm0, xmm15
movss dword [rbp - 0x60], xmm0
cvttss2si eax, xmm13
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm15
movss dword [rbp - 0x5c], xmm1
mov dword [rbp - 0x58], 0
mov dword [rbp - 0x54], 0x3f800000
lea rcx, [rbp - 0x60]
call fcn.18000dca0
mov rbx, qword [0x18040fc70]
movss xmm13, dword [0x1800aac88]
movss dword [rsp + 0x28], xmm13
mov dword [rsp + 0x20], r12d
mov r9d, eax
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.180030b40
mov dword [rbx + 0x78], r12d
movss xmm8, dword [0x1800aad3c]
movsd xmm9, qword [0x1800aac08]
jmp 0x180082767
movsd xmm9, qword [0x1800aac08]
movss xmm13, dword [0x1800aac88]
cmp byte [0x1803d9cdf], 0
je 0x180082e70
mov ecx, esi
mov rax, qword gs:[0x58]
mov rdi, qword [rax + rcx*8]
mov eax, r14d
mov ecx, dword [rax + rdi]
cmp dword [0x180410114], ecx
jle 0x1800827c3
lea rcx, [0x180410114]
call fcn.180091038
cmp dword [0x180410114], 0xffffffff
jne 0x1800827c3
mov ecx, 0x3a1e5c61
call fcn.18005e4d0
mov qword [0x1804101e0], rax
lea rcx, [0x180410114]
call fcn.180090fcc
mov rax, qword [0x1804101e0]
mov rcx, qword [rax + 0xb8]
mov rcx, qword [rcx]
call fcn.180087e70
mov rbx, rax
test rax, rax
je 0x1800827f4
mov rcx, rax
call fcn.180066660
cmp eax, 0x407209f5
je 0x1800828ce
mov rcx, rbx
call fcn.180066660
cmp eax, 0xe93460ee
je 0x1800828ce
mov eax, r14d
mov edx, dword [rax + rdi]
cmp dword [0x180410114], edx
jle 0x180082847
lea rcx, [0x180410114]
call fcn.180091038
cmp dword [0x180410114], 0xffffffff
jne 0x180082847
mov ecx, 0x3a1e5c61
call fcn.18005e4d0
mov qword [0x1804101e0], rax
lea rcx, [0x180410114]
call fcn.180090fcc
mov rax, qword [0x1804101e0]
mov rcx, qword [rax + 0xb8]
mov rcx, qword [rcx]
call fcn.180066830
mov rdx, qword [0x1803d9b88]
add rdx, rax
movabs r8, 0x7fffffff0000
cmp rdx, 0x40000
jbe 0x180082888
lea rax, [rdx + 8]
cmp rax, r8
jae 0x180082888
mov rcx, qword [rdx]
jmp 0x18008288b
mov rcx, r12
add rcx, qword [0x1803d9b80]
cmp rcx, 0x40000
jbe 0x1800828ac
lea rax, [rcx + 4]
cmp rax, r8
jae 0x1800828ac
cmp dword [rcx], 0x7523110a
je 0x1800828ce
mov rcx, rbx
call fcn.180066660
cmp eax, 0x643e3521
je 0x1800828ce
mov rcx, rbx
call fcn.180066660
cmp eax, 0xda95d4a2
jne 0x180082e70
cmp byte [0x1803d9aa7], 0
jne 0x180082c57
mov dword [rbp - 0x70], 0
test rbx, rbx
jne 0x1800828f4
lea rdi, [rbp - 0x70]
movaps xmm1, xmm10
jmp 0x18008299f
mov ecx, esi
mov rax, qword gs:[0x58]
mov rsi, qword [rax + rcx*8]
mov eax, r14d
mov ecx, dword [rax + rsi]
cmp dword [0x18040fe40], ecx
jle 0x180082943
lea rcx, [0x18040fe40]
call fcn.180091038
cmp dword [0x18040fe40], 0xffffffff
jne 0x180082943
mov ecx, 0x5d491345
call fcn.180060450
mov qword [0x180410050], rax
lea rcx, [0x18040fe40]
call fcn.180090fcc
mov rdi, qword [0x180410050]
add rdi, rbx
mov eax, r14d
mov ecx, dword [rax + rsi]
cmp dword [0x18040fe40], ecx
jle 0x18008298d
lea rcx, [0x18040fe40]
call fcn.180091038
cmp dword [0x18040fe40], 0xffffffff
jne 0x18008298d
mov ecx, 0x5d491345
call fcn.180060450
mov qword [0x180410050], rax
lea rcx, [0x18040fe40]
call fcn.180090fcc
mov rax, qword [0x180410050]
movss xmm1, dword [rax + rbx]
mov esi, dword [0x1803d9a14]
movss xmm0, dword [rdi]
movss xmm7, dword [0x1800aacd4]
divss xmm0, xmm7
subss xmm1, xmm0
movss xmm6, dword [0x1803d9c60]
comiss xmm1, xmm6
jb 0x180082c57
comiss xmm6, xmm10
jbe 0x180082c57
mov dword [rbp - 0x6c], 0
test rbx, rbx
jne 0x1800829e7
lea rdi, [rbp - 0x6c]
movaps xmm1, xmm10
jmp 0x180082a8c
mov ecx, esi
mov rax, qword gs:[0x58]
mov rsi, qword [rax + rcx*8]
mov eax, r14d
mov ecx, dword [rax + rsi]
cmp dword [0x18040fe40], ecx
jle 0x180082a36
lea rcx, [0x18040fe40]
call fcn.180091038
cmp dword [0x18040fe40], 0xffffffff
jne 0x180082a36
mov ecx, 0x5d491345
call fcn.180060450
mov qword [0x180410050], rax
lea rcx, [0x18040fe40]
call fcn.180090fcc
mov rdi, qword [0x180410050]
add rdi, rbx
mov eax, r14d
mov edx, dword [rax + rsi]
cmp dword [0x18040fe40], edx
jle 0x180082a80
lea rcx, [0x18040fe40]
call fcn.180091038
cmp dword [0x18040fe40], 0xffffffff
jne 0x180082a80
mov ecx, 0x5d491345
call fcn.180060450
mov qword [0x180410050], rax
lea rcx, [0x18040fe40]
call fcn.180090fcc
mov rax, qword [0x180410050]
movss xmm1, dword [rax + rbx]
movss xmm0, dword [rdi]
divss xmm0, xmm7
subss xmm1, xmm0
divss xmm6, xmm1
mulss xmm6, xmm8
addss xmm6, xmm14
divss xmm6, xmm8
movaps xmm7, xmm14
subss xmm7, xmm6
cvtps2pd xmm0, xmm6
comisd xmm9, xmm0
jbe 0x180082ac1
movaps xmm7, xmm10
ucomiss xmm7, xmm10
jp 0x180082acd
je 0x180082e70
movaps xmm0, xmm7
addss xmm0, xmm7
movss xmm9, dword [0x1800aab98]
comiss xmm9, xmm7
jbe 0x180082aee
mulss xmm0, xmm11
movaps xmm8, xmm0
jmp 0x180082b00
movaps xmm8, xmm11
subss xmm12, xmm0
mulss xmm12, xmm11
movaps xmm11, xmm12
movss xmm0, dword [rsp + 0x38]
movss dword [rbp - 0x80], xmm0
movss xmm12, dword [rsp + 0x30]
addss xmm12, xmm14
movss dword [rbp - 0x7c], xmm12
mov dword [rsp + 0x28], 0x30
movss dword [rsp + 0x20], xmm10
movss xmm3, dword [0x1800aac8c]
movss xmm6, dword [0x1800aad18]
movaps xmm2, xmm6
lea rdx, [rbp - 0x80]
mov rcx, qword [0x18040fc70]
call fcn.1800323c0
movaps xmm0, xmmword [0x1800ab030]
movups xmmword [rsp + 0x40], xmm0
mov rbx, qword [0x18040fc70]
lea rcx, [rsp + 0x40]
call fcn.18000dca0
mov r9d, eax
movss dword [rsp + 0x28], xmm13
mov dword [rsp + 0x20], r12d
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.180030b40
mov dword [rbx + 0x78], r12d
movss xmm0, dword [rsp + 0x38]
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x34], xmm12
minss xmm14, xmm7
cvtps2pd xmm0, xmm14
mulsd xmm0, qword [0x1800aac58]
cvtpd2ps xmm3, xmm0
mov dword [rsp + 0x28], 0x30
movss dword [rsp + 0x20], xmm10
movaps xmm2, xmm6
lea rdx, [rsp + 0x30]
mov rcx, qword [0x18040fc70]
call fcn.1800323c0
cvttss2si eax, xmm8
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm15
movss dword [rsp + 0x70], xmm0
cvttss2si eax, xmm11
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm15
movss dword [rsp + 0x74], xmm1
mov dword [rsp + 0x78], 0
mov dword [rsp + 0x7c], 0x3f800000
mov rbx, qword [0x18040fc70]
lea rcx, [rsp + 0x70]
call fcn.18000dca0
mov r9d, eax
movss dword [rsp + 0x28], xmm13
mov dword [rsp + 0x20], r12d
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.180030b40
mov dword [rbx + 0x78], r12d
jmp 0x180082e79
test rbx, rbx
jne 0x180082c62
movaps xmm0, xmm10
jmp 0x180082cbd
mov edx, esi
mov rax, qword gs:[0x58]
mov ecx, r14d
mov rax, qword [rax + rdx*8]
mov ecx, dword [rcx + rax]
cmp dword [0x1804101a8], ecx
jle 0x180082cb1
lea rcx, [0x1804101a8]
call fcn.180091038
cmp dword [0x1804101a8], 0xffffffff
jne 0x180082cb1
mov ecx, 0x6c06da54
call fcn.180060450
mov qword [0x180410010], rax
lea rcx, [0x1804101a8]
call fcn.180090fcc
mov rax, qword [0x180410010]
movss xmm0, dword [rax + rbx]
movss xmm1, dword [0x1803d9af8]
comiss xmm0, xmm1
jbe 0x180082e70
test rbx, rbx
jne 0x180082ce8
movaps xmm7, xmm10
subss xmm7, xmm1
movaps xmm6, xmm10
movaps xmm2, xmm10
jmp 0x180082e02
mov edx, esi
mov rax, qword gs:[0x58]
mov ecx, r14d
mov rax, qword [rax + rdx*8]
mov ecx, dword [rcx + rax]
cmp dword [0x1804101a8], ecx
jle 0x180082d37
lea rcx, [0x1804101a8]
call fcn.180091038
cmp dword [0x1804101a8], 0xffffffff
jne 0x180082d37
mov ecx, 0x6c06da54
call fcn.180060450
mov qword [0x180410010], rax
lea rcx, [0x1804101a8]
call fcn.180090fcc
mov rax, qword [0x180410010]
movss xmm7, dword [rax + rbx]
subss xmm7, dword [0x1803d9af8]
mov edx, esi
mov rax, qword gs:[0x58]
mov ecx, r14d
mov rax, qword [rax + rdx*8]
mov ecx, dword [rcx + rax]
cmp dword [0x18040fe40], ecx
jle 0x180082d9a
lea rcx, [0x18040fe40]
call fcn.180091038
cmp dword [0x18040fe40], 0xffffffff
jne 0x180082d9a
mov ecx, 0x5d491345
call fcn.180060450
mov qword [0x180410050], rax
lea rcx, [0x18040fe40]
call fcn.180090fcc
mov rax, qword [0x180410050]
movss xmm6, dword [rax + rbx]
mov r8d, esi
mov rax, qword gs:[0x58]
mov edx, r14d
mov rax, qword [rax + r8*8]
mov edx, dword [rdx + rax]
cmp dword [0x1804101a8], edx
jle 0x180082df6
lea rcx, [0x1804101a8]
call fcn.180091038
cmp dword [0x1804101a8], 0xffffffff
jne 0x180082df6
mov ecx, 0x6c06da54
call fcn.180060450
mov qword [0x180410010], rax
lea rcx, [0x1804101a8]
call fcn.180090fcc
mov rax, qword [0x180410010]
movss xmm2, dword [rax + rbx]
movss xmm3, dword [0x1803d9af8]
movaps xmm1, xmm3
addss xmm1, xmm6
comiss xmm10, xmm2
jbe 0x180082e28
subss xmm1, xmm10
comiss xmm10, xmm1
jbe 0x180082e4d
movaps xmm1, xmm10
jmp 0x180082e4d
addss xmm6, xmm2
movaps xmm0, xmm3
subss xmm0, xmm2
comiss xmm10, xmm0
jb 0x180082e40
comiss xmm1, xmm6
ja 0x180082e4a
jmp 0x180082e4d
subss xmm1, xmm10
comiss xmm6, xmm1
jbe 0x180082e4d
movaps xmm1, xmm6
subss xmm1, xmm3
divss xmm7, xmm1
mulss xmm7, xmm8
addss xmm7, xmm14
divss xmm7, xmm8
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
jmp 0x180082ab6
movss xmm9, dword [0x1800aab98]
cmp byte [0x1803d9bf6], 0
je 0x180082f3a
movd xmm6, dword [0x180338e1c]
cvtdq2ps xmm6, xmm6
movaps xmm0, xmmword [0x1800ab280]
movaps xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x40]
call fcn.18000dca0
mov edi, eax
movss xmm0, dword [0x1803d9c70]
mulss xmm0, xmm9
movss dword [rsp + 0x38], xmm0
movss xmm1, dword [0x1803d9c74]
mulss xmm1, xmm9
movss dword [rsp + 0x3c], xmm1
mov rbx, qword [0x18040fc70]
test eax, 0xff000000
je 0x180082f3a
comiss xmm9, xmm6
ja 0x180082f3a
subss xmm6, xmm9
mov dword [rsp + 0x20], 0x30
xor r9d, r9d
movaps xmm2, xmm6
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.180032060
mov r8d, dword [rbx + 0x78]
dec r8d
mov dword [rbx + 0x78], r8d
movss xmm0, dword [0x1800aabf8]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, edi
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.180030b40
mov dword [rbx + 0x78], r12d
mov rcx, qword [rbp + 0x250]
xor rcx, rsp
call fcn.180090f70
lea r11, [rsp + 0x400]
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]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret