Function at 0x180106440
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 - 0x1e8]
sub rsp, 0x2c0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
mov rax, qword [0x1802c2700]
xor rax, rsp
mov qword [rbp + 0x180], rax
call fcn.18014ac60
mov r13d, dword [0x1802eed10]
mov rax, qword gs:[0x58]
mov edx, 0x26c
mov r15d, edx
mov r12, qword [rax + r13*8]
mov eax, dword [r12 + rdx]
cmp dword [0x1802ec9a0], eax
jg 0x1801061c4
mov eax, dword [r12 + r15]
cmp dword [0x1802ec9a4], eax
jg 0x1801061fa
mov eax, dword [r12 + r15]
cmp dword [0x1802ec9a8], eax
jg 0x180106230
mov rsi, qword [0x180292790]
lea r14, [0x180292780]
cmp qword [0x180292798], 0xf
cmova r14, qword [0x180292780]
movabs rdi, 0x7fffffffffffffff
cmp rsi, rdi
ja 0x180106266
cmp rsi, 0xf
ja 0x180105389
mov edi, 0xf
mov rbx, qword [r14]
jmp 0x18010540d
mov rax, rsi
or rax, 0xf
cmp rax, rdi
jbe 0x1801053c2
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.180199d50
test rax, rax
je 0x180105438
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1801053fe
mov rdi, rax
mov ecx, 0x16
cmp rax, rcx
cmovb rdi, rcx
lea rcx, [rdi + 1]
test rcx, rcx
jne 0x1801053de
xor ebx, ebx
jmp 0x1801053fe
cmp rcx, 0x1000
jb 0x1801053f6
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x18010614d
jmp 0x1801053a3
call fcn.180199d50
mov rbx, rax
lea r8, [rsi + 1]
mov rdx, r14
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
cmp rdi, 0xf
jbe 0x180105447
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x18010543f
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18010543f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rbx
call fcn.180199d8c
test rsi, rsi
je 0x18010545a
xor edx, edx
lea rcx, str.deletelocation
call fcn.18015b910
xor edx, edx
mov r8d, 7
lea rcx, str.deletelocation
call fcn.18014af60
lea rdi, str.Default
movss xmm6, dword [0x1801d8214]
test al, al
je 0x18010554c
movups xmm0, xmmword [0x180292780]
movaps xmmword [rsp + 0x50], xmm0
movups xmm1, xmmword [0x180292790]
movaps xmmword [rsp + 0x60], xmm1
lea rdx, [rsp + 0x50]
lea rcx, str.Are_you_sure_you_want_to_delete__s_
call fcn.18017b980
call fcn.18017b410
mov qword [rsp + 0x40], 0
lea rdx, [rsp + 0x40]
lea rcx, [0x18020b714]
call fcn.1801716b0
test al, al
je 0x180105503
call fcn.1800b0eb0
lea r8, [0x180292780]
mov rdx, rdi
mov rcx, rax
call fcn.1800b0660
xor r8d, r8d
lea rdx, [0x1801d8113]
lea rcx, [0x180292780]
call fcn.1800653c0
call fcn.18014c8c0
movaps xmm1, xmm6
xorps xmm0, xmm0
call fcn.1801604f0
mov qword [rsp + 0x40], 0
lea rdx, [rsp + 0x40]
lea rcx, [0x18020b718]
call fcn.1801716b0
test al, al
je 0x180105547
xor r8d, r8d
lea rdx, [0x1801d8113]
lea rcx, [0x180292780]
call fcn.1800653c0
call fcn.18014c8c0
call fcn.18014ef10
movss xmm0, dword [0x1801eadf8]
call fcn.18015c5e0
lea rax, [rbp - 0x50]
mov qword [rsp + 0x40], rax
xor ebx, ebx
mov qword [rbp - 0x18], rbx
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], 8
mov qword [rsp + 0x68], 0xf
movabs rcx, 0x79726f6765746143
mov qword [rsp + 0x50], rcx
mov byte [rsp + 0x58], bl
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], 8
mov qword [rbp - 0x78], 0xf
mov qword [rsp + 0x70], rcx
mov byte [rsp + 0x78], bl
mov qword [rsp + 0x30], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebx
mov r9, rdi
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0xe0]
call fcn.1800e3870
nop
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx]
nop
lea rcx, [rbp + 0xe0]
call fcn.1800e49e0
movss xmm0, dword [0x1801ea518]
call fcn.18015c5e0
lea rax, [rbp - 0x50]
mov qword [rsp + 0x40], rax
mov qword [rbp - 0x18], rbx
lea rax, [rsp + 0x70]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], 0xc
mov qword [rbp - 0x78], 0xf
movsd xmm0, qword [str.New_location]
movsd qword [rsp + 0x70], xmm0
mov eax, dword [0x18020b728]
mov dword [rsp + 0x78], eax
mov byte [rsp + 0x7c], bl
mov word [rsp + 0x5e], bx
mov qword [rsp + 0x60], 0xd
mov qword [rsp + 0x68], 0xf
movsd xmm0, qword [str.Location_name]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [0x18020b738]
mov dword [rsp + 0x58], eax
movzx eax, byte [0x18020b73c]
mov byte [rsp + 0x5c], al
mov byte [rsp + 0x5d], bl
mov qword [rsp + 0x30], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebx
lea r9, [0x180292740]
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0xe0]
call fcn.1800e3870
nop
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx]
nop
lea rcx, [rbp + 0xe0]
call fcn.1800e49e0
call fcn.18015bf30
mov qword [rsp + 0x40], rbx
lea rdx, [rsp + 0x40]
lea rcx, str.Save_current_location
call fcn.1801716b0
test al, al
je 0x180105714
lea rax, vtable.std::_Func_impl_no_alloc_class__void___cdecl_YimMenu::Submenus::RenderCustomTeleport_void_::_16::_lambda_1___void___.0
mov qword [rbp - 8], rax
lea rax, [rbp - 8]
mov qword [rbp + 0x30], rax
lea rcx, [rbp - 8]
call fcn.180055740
call fcn.18017a3f0
lea rcx, str.Double_click_to_teleport_nShift_click_to_delete
call fcn.18017b980
call fcn.18017b410
mov eax, dword [r12 + r15]
cmp dword [0x1802ec9ac], eax
jg 0x18010626c
lea rax, [rbp - 0x50]
mov qword [rsp + 0x40], rax
mov qword [rbp - 0x18], rbx
lea rax, [rsp + 0x50]
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], 6
mov qword [rsp + 0x68], 0xf
mov eax, dword [str.Search]
mov dword [rsp + 0x50], eax
movzx eax, word [0x1801fea64]
mov word [rsp + 0x54], ax
mov byte [rsp + 0x56], 0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], 8
mov qword [rbp - 0x78], 0xf
movabs rax, 0x7265746c69662323
mov qword [rsp + 0x70], rax
mov byte [rsp + 0x78], 0
mov qword [rsp + 0x30], rbx
lea rax, [rbp - 0x50]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ebx
lea r9, [0x180292720]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x40]
call fcn.1800e3870
nop
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx]
nop
mov rcx, qword [rbp + 0xd0]
test rcx, rcx
je 0x18010580b
mov rax, qword [rcx]
lea rdx, [rbp + 0x98]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0xd0], rbx
mov rdx, qword [rbp + 0x80]
cmp rdx, 0xf
jbe 0x180105845
inc rdx
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180105840
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18010588a
call fcn.180199d8c
mov qword [rbp + 0x78], rbx
mov qword [rbp + 0x80], 0xf
mov byte [rbp + 0x68], 0
mov rdx, qword [rbp + 0x60]
cmp rdx, 0xf
jbe 0x180105896
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180105891
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180105891
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180199d8c
call fcn.18014ac60
lea rcx, str.Categories
call fcn.18017b980
mov dword [rsp + 0x40], 0x43480000
mov dword [rsp + 0x44], 0xbf800000
lea rdx, [rsp + 0x40]
lea rcx, str.categories
call fcn.180171140
test al, al
je 0x180105a0d
call fcn.1800b0eb0
mov r14, qword [rax]
mov rbx, qword [r14]
cmp rbx, r14
je 0x180105a06
lea r13, str.Default
nop dword [rax + rax]
lea rdi, [rbx + 0x20]
mov qword [rsp + 0x40], 0
mov rdx, r13
cmp qword [0x180292778], 0xf
cmova rdx, qword [str.Default]
mov r8, qword [rdi + 0x10]
mov rcx, rdi
mov rsi, qword [rdi + 0x18]
cmp rsi, 0xf
jbe 0x180105924
mov rcx, qword [rdi]
cmp r8, qword [0x180292770]
jne 0x18010593a
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x18010593a
mov dl, 1
jmp 0x18010593c
xor dl, dl
mov rcx, rdi
cmp rsi, 0xf
jbe 0x180105948
mov rcx, qword [rdi]
lea r9, [rsp + 0x40]
xor r8d, r8d
call fcn.180179c40
test al, al
je 0x180105977
cmp r13, rdi
je 0x180105977
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x18010596b
mov rdx, qword [rdi]
mov r8, qword [rdi + 0x10]
mov rcx, r13
call fcn.1800653c0
cmp qword [0x180292770], 0
jne 0x18010599f
cmp r13, rdi
je 0x18010599f
mov r8, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x180105994
mov rdi, qword [rdi]
mov rdx, rdi
mov rcx, r13
call fcn.1800653c0
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x1801059cb
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1801059c6
cmp rbx, qword [rax + 0x10]
jne 0x1801059c6
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1801059b3
mov rbx, rax
jmp 0x1801059ef
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x1801059ef
nop word [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x1801059e0
cmp rbx, r14
jne 0x1801058f0
mov r13d, dword [0x1802eed10]
lea rdi, str.Default
call fcn.180173dd0
xor ebx, ebx
call fcn.18014eb00
movaps xmm1, xmm6
xorps xmm0, xmm0
call fcn.1801604f0
call fcn.18014ac60
lea rcx, str.Locations
call fcn.18017b980
mov dword [rsp + 0x40], 0x43480000
mov dword [rsp + 0x44], 0xbf800000
lea rdx, [rsp + 0x40]
lea rcx, str.saved_locs
call fcn.180171140
test al, al
je 0x1801060cd
mov ecx, r13d
mov rax, qword gs:[0x58]
mov r8d, 0x26c
mov rdx, qword [rax + rcx*8]
mov r12d, dword [0x1802e7928]
cmp r12d, dword [r8 + rdx]
jg 0x1801062a2
mov r15, qword [0x1802e7918]
mov rbx, qword [r15 + 8]
mov r14, r15
mov r13, qword [0x180292778]
mov rsi, qword [0x180292770]
mov rax, qword [str.Default]
cmp byte [rbx + 0x19], 0
jne 0x180105b03
lea r12, str.Default
nop
lea rcx, [rbx + 0x20]
mov rdx, r12
cmp r13, 0xf
cmova rdx, rax
mov rdi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0xf
jbe 0x180105acd
mov rcx, qword [rcx]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180105b3e
js 0x180105b43
mov r14, rbx
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
mov rax, qword [str.Default]
je 0x180105ab0
mov r12d, dword [0x1802e7928]
lea rdi, str.Default
cmp byte [r14 + 0x19], 0
jne 0x180105b4e
lea rdx, [r14 + 0x20]
mov rbx, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x180105b1c
mov rdx, qword [rdx]
mov rcx, rdi
cmp r13, 0xf
cmova rcx, rax
mov r8, rsi
cmp rbx, rsi
cmovb r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180105b49
jns 0x180105b51
jmp 0x180105b4e
cmp rdi, rsi
jae 0x180105ae2
mov rbx, qword [rbx + 0x10]
jmp 0x180105ae8
cmp rsi, rbx
jae 0x180105b51
mov r14, r15
mov esi, dword [0x1802eed10]
mov rax, qword gs:[0x58]
mov ecx, 0x26c
mov rdx, qword [rax + rsi*8]
cmp r12d, dword [rcx + rdx]
jg 0x180106153
jmp 0x180105b7c
mov r15, qword [0x1802e7918]
xor r13d, r13d
cmp r14, r15
je 0x1801060c8
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], r13
movabs r15, 0x4924924924924925
cmp qword [0x180292730], 0
je 0x180105d26
lea rdx, [0x180292720]
lea rcx, [rsp + 0x70]
call fcn.180054850
mov rdi, rax
mov qword [rsp + 0x40], rax
call fcn.1800b0eb0
mov rbx, rax
mov rdx, rdi
lea rcx, [rbp - 8]
call fcn.180054850
mov r8, rax
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.1800b1ea0
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x180105c24
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x180105c1f
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180105ce9
mov rcx, r8
call fcn.180199d8c
mov qword [rdi + 0x10], r13
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
mov rbx, qword [rbp - 0x70]
test rbx, rbx
je 0x180105cf8
mov rdi, qword [rbp - 0x68]
cmp rbx, rdi
je 0x180105ca2
nop dword [rax]
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x180105c86
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x180105c81
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180105ce2
mov rcx, r8
call fcn.180199d8c
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
add rbx, 0x38
cmp rbx, rdi
jne 0x180105c50
mov rbx, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x60]
sub rcx, rbx
mov rax, r15
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x38
mov rax, rbx
cmp rdx, 0x1000
jb 0x180105cf0
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180105cf0
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
mov rcx, rbx
call fcn.180199d8c
movups xmm0, xmmword [rsp + 0x50]
movups xmmword [rbp - 0x70], xmm0
movsd xmm1, qword [rsp + 0x60]
movsd qword [rbp - 0x60], xmm1
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r13
lea rcx, [rsp + 0x50]
call fcn.1800b2950
jmp 0x180105d69
call fcn.1800b0eb0
mov rdx, rdi
mov rcx, rax
call fcn.1800e5780
lea rcx, [rbp - 0x70]
cmp rcx, rax
je 0x180105d69
mov r9, qword [rax]
mov rcx, qword [rax + 8]
sub rcx, r9
mov rax, r15
imul rcx
sar rdx, 4
mov r8, rdx
shr r8, 0x3f
add r8, rdx
mov rdx, r9
lea rcx, [rbp - 0x70]
call fcn.1800e45e0
mov r14, qword [rbp - 0x68]
mov rbx, qword [rbp - 0x70]
cmp rbx, r14
je 0x180106012
mov rax, qword gs:[0x58]
mov r15d, 0x26c
mov r12, qword [rax + rsi*8]
lea rsi, [rbx + 0x30]
lea rdi, vtable.std::_Func_impl_no_alloc_class__void___cdecl_YimMenu::Submenus::RenderCustomTeleport_void_::_53::_lambda_2___void___.0
nop dword [rax + rax]
mov qword [rsp + 0x40], 0
lea rbx, [rsi - 0x30]
mov rcx, rbx
cmp qword [rsi - 0x18], 0xf
jbe 0x180105dba
mov rcx, qword [rbx]
lea r9, [rsp + 0x40]
xor edx, edx
mov r8d, 4
call fcn.180179c40
test al, al
je 0x180105f2a
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x180105e5b
lea rax, [0x180292780]
cmp rax, rbx
je 0x180105e09
cmp qword [rsi - 0x18], 0xf
jbe 0x180105dfa
mov rbx, qword [rbx]
mov r8, qword [rsi - 0x20]
mov rdx, rbx
mov rcx, rax
call fcn.1800653c0
movss xmm0, dword [rsi - 0x10]
movss dword [0x1802927a0], xmm0
movss xmm1, dword [rsi - 0xc]
movss dword [0x1802927a4], xmm1
movss xmm0, dword [rsi - 8]
movss dword [0x1802927a8], xmm0
movss xmm1, dword [rsi - 4]
movss dword [0x1802927ac], xmm1
movss xmm0, dword [rsi]
movss dword [0x1802927b0], xmm0
movss xmm1, dword [rsi + 4]
movss dword [0x1802927b4], xmm1
jmp 0x180105f2a
xor ecx, ecx
call fcn.1801548f0
test al, al
je 0x180105f2a
lea rax, [rbp - 0x50]
mov qword [rbp - 0x58], rax
mov rdx, rbx
lea rcx, [rbp - 8]
call fcn.180054850
movups xmm0, xmmword [rsi - 0x10]
movups xmmword [rbp + 0x18], xmm0
movss xmm0, dword [rsi]
movss dword [rbp + 0x28], xmm0
movss xmm1, dword [rsi + 4]
movss dword [rbp + 0x2c], xmm1
mov qword [rbp - 0x18], r13
mov ecx, 0x40
call fcn.180199d50
mov rbx, rax
mov qword [rbp - 0x10], rax
mov qword [rax], rdi
lea rdx, [rbp - 8]
lea rcx, [rax + 8]
call fcn.180054850
movups xmm0, xmmword [rbp + 0x18]
movups xmmword [rbx + 0x28], xmm0
movss xmm0, dword [rbp + 0x28]
movss dword [rbx + 0x38], xmm0
movss xmm1, dword [rbp + 0x2c]
movss dword [rbx + 0x3c], xmm1
mov qword [rbp - 0x18], rbx
lea rcx, [rbp - 0x50]
call fcn.180055740
nop
mov rdx, qword [rbp + 0x10]
cmp rdx, 0xf
jbe 0x180105f23
inc rdx
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180105f1e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801060b9
call fcn.180199d8c
lea rdi, vtable.std::_Func_impl_no_alloc_class__void___cdecl_YimMenu::Submenus::RenderCustomTeleport_void_::_53::_lambda_2___void___.0
xor ecx, ecx
call fcn.180153ee0
test al, al
je 0x180105fef
call fcn.18014b100
cmp qword [rsi - 0x20], 0x1b
jbe 0x180105f59
lea rcx, [rsi - 0x30]
cmp qword [rsi - 0x18], 0xf
jbe 0x180105f54
mov rcx, qword [rsi - 0x30]
call fcn.18017b980
movss xmm8, dword [rsi - 8]
movss xmm6, dword [rsi - 0xc]
movss xmm7, dword [rsi - 0x10]
mov eax, dword [r12 + r15]
cmp dword [0x1802e7c50], eax
jg 0x180106116
movups xmm0, xmmword [0x1802e7c18]
movups xmmword [rsp + 0x70], xmm0
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x70]
call fcn.18012c1f0
subss xmm7, dword [rax]
subss xmm6, dword [rax + 4]
subss xmm8, dword [rax + 8]
mulss xmm6, xmm6
mulss xmm7, xmm7
addss xmm6, xmm7
mulss xmm8, xmm8
addss xmm6, xmm8
xorps xmm0, xmm0
ucomiss xmm0, xmm6
ja 0x180105fca
xorps xmm0, xmm0
sqrtss xmm0, xmm6
jmp 0x180105fd2
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movq rdx, xmm1
lea rcx, str.Distance:__f
call fcn.18017b980
call fcn.18014ef80
add rsi, 0x38
lea rax, [rsi - 0x30]
cmp rax, r14
jne 0x180105da0
mov r14, qword [rbp - 0x68]
mov rbx, qword [rbp - 0x70]
movabs r15, 0x4924924924924925
test rbx, rbx
je 0x1801060c8
cmp rbx, r14
je 0x180106072
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x180106056
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x180106051
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1801060b2
mov rcx, r8
call fcn.180199d8c
mov qword [rbx + 0x10], r13
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
add rbx, 0x38
cmp rbx, r14
jne 0x180106020
mov rbx, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x60]
sub rcx, rbx
mov rax, r15
imul rcx
sar rdx, 4
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x38
mov rax, rbx
cmp rdx, 0x1000
jb 0x1801060c0
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1801060c0
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
mov rcx, rbx
call fcn.180199d8c
call fcn.180173dd0
call fcn.18014eb00
call fcn.18014eb00
mov rcx, qword [rbp + 0x180]
xor rcx, rsp
call fcn.180199d30
lea r11, [rsp + 0x2c0]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
lea rcx, [0x1802e7c50]
call fcn.18019a1ac
cmp dword [0x1802e7c50], 0xffffffff
jne 0x180105f79
lea rcx, [0x1802e7c18]
call fcn.1800b5b10
nop
lea rcx, [0x1802e7c50]
call fcn.18019a140
jmp 0x180105f79
call fcn.180055a80
int3
lea rcx, [0x1802e7928]
call fcn.18019a1ac
cmp dword [0x1802e7928], 0xffffffff
jne 0x180105b75
xor r13d, r13d
mov qword [0x1802e7918], r13
mov qword [0x1802e7920], r13
mov ecx, 0x58
call fcn.180199d50
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [0x1802e7918], rax
lea rcx, [0x1801c8360]
call fcn.18019a0ec
nop
lea rcx, [0x1802e7928]
call fcn.18019a140
mov r15, qword [0x1802e7918]
jmp 0x180105b7f
lea rcx, [0x1802ec9a0]
call fcn.18019a1ac
cmp dword [0x1802ec9a0], 0xffffffff
jne 0x180105325
lea rcx, [0x1801d3850]
call fcn.18019a0ec
lea rcx, [0x1802ec9a0]
call fcn.18019a140
jmp 0x180105325
lea rcx, [0x1802ec9a4]
call fcn.18019a1ac
cmp dword [0x1802ec9a4], 0xffffffff
jne 0x180105335
lea rcx, [0x1801d3700]
call fcn.18019a0ec
lea rcx, [0x1802ec9a4]
call fcn.18019a140
jmp 0x180105335
lea rcx, [0x1802ec9a8]
call fcn.18019a1ac
cmp dword [0x1802ec9a8], 0xffffffff
jne 0x180105345
lea rcx, [0x1801d37e0]
call fcn.18019a0ec
lea rcx, [0x1802ec9a8]
call fcn.18019a140
jmp 0x180105345
call fcn.180055aa0
int3
lea rcx, [0x1802ec9ac]
call fcn.18019a1ac
cmp dword [0x1802ec9ac], 0xffffffff
jne 0x18010573a
lea rcx, [0x1801d3770]
call fcn.18019a0ec
lea rcx, [0x1802ec9ac]
call fcn.18019a140
jmp 0x18010573a
lea rcx, [0x1802e7928]
call fcn.18019a1ac
mov r12d, dword [0x1802e7928]
cmp r12d, 0xffffffff
jne 0x180105a7e
mov qword [0x1802e7918], rbx
mov qword [0x1802e7920], rbx
mov ecx, 0x58
call fcn.180199d50
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [0x1802e7918], rax
lea rcx, [0x1801c8360]
call fcn.18019a0ec
nop
lea rcx, [0x1802e7928]
call fcn.18019a140
mov r12d, dword [0x1802e7928]
jmp 0x180105a7e
jmp 0x1801052b0