Function at 0x14001e330
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x1e8]
sub rsp, 0x2b0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
movaps xmmword [rax - 0xb8], xmm13
movaps xmmword [rax - 0xc8], xmm14
movaps xmmword [rax - 0xd8], xmm15
mov rax, qword [0x140137010]
xor rax, rsp
mov qword [rbp + 0x100], rax
mov r15, rdx
mov qword [rbp - 0x50], rdx
mov r10, rcx
mov qword [rsp + 0x28], rcx
mov rax, qword [rdx]
test rax, rax
jne 0x14001e688
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x10], xmm1
lea r8d, [rax + 7]
lea rdx, str.Geodata
lea rcx, [rbp]
call fcn.140004240
nop
mov dword [rbp + 0x40], 2
lea rdx, [rbp]
lea rcx, [rbp + 0x48]
call fcn.1400038d0
nop
mov rdi, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov qword [rbp + 0x68], rdi
cmp dword [rbp + 0x40], 4
jg 0x14001e534
mov rbx, qword [rbp + 0x58]
test rbx, rbx
je 0x14001e487
cmp qword [0x140137680], 0
je 0x14001e482
lea rdx, [rbp + 0x48]
cmp qword [rbp + 0x60], 0x10
cmovae rdx, qword [rbp + 0x48]
xor ecx, ecx
movabs r9, 0xcbf29ce484222325
test rbx, rbx
je 0x14001e463
movabs r8, 0x100000001b3
nop dword [rax + rax]
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r8
inc rcx
cmp rcx, rbx
jb 0x14001e450
lea r8, [rbp + 0x48]
lea rdx, [rbp - 0x78]
lea rcx, [0x140137670]
call fcn.140016da0
cmp qword [rax + 8], 0
je 0x14001e534
test rbx, rbx
jne 0x14001e4c4
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x40]
call fcn.1400b4880
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x14001e4a3
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call fcn.140004f80
mov rcx, rax
lea rdx, [0x1400bbc98]
call fcn.140003f20
nop
lea rcx, [rbp + 0x20]
jmp 0x14001e52e
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x40]
call fcn.1400b4880
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x14001e4e3
mov rax, qword [rax]
mov rdx, rax
mov rcx, rdi
call fcn.140004f80
lea rdx, [0x140101238]
mov rcx, rax
call fcn.140003f20
lea rdx, [rbp + 0x48]
cmp qword [rbp + 0x60], 0x10
cmovae rdx, qword [rbp + 0x48]
mov r8, qword [rbp + 0x58]
mov rcx, rax
call fcn.140004f80
mov rcx, rax
lea rdx, [0x1400bc2a0]
call fcn.140003f20
nop
lea rcx, [rbp + 0x98]
call fcn.140003b00
nop
lea rcx, [rbp + 0x40]
call fcn.1400b4ac0
test al, al
je 0x14001e551
lea rdx, str.Assertion__
mov rcx, qword [rbp + 0x68]
call fcn.140003f20
lea rcx, [rbp + 0x40]
call fcn.1400b4ac0
test al, al
je 0x14001e56e
lea rdx, str.entity.mesh___nullptr
mov rcx, qword [rbp + 0x68]
call fcn.140003f20
lea rcx, [rbp + 0x40]
call fcn.1400b4ac0
test al, al
je 0x14001e58b
lea rdx, str.__failed_at
mov rcx, qword [rbp + 0x68]
call fcn.140003f20
lea rcx, [rbp + 0x40]
call fcn.1400b4ac0
test al, al
je 0x14001e5a8
lea rdx, str.C:Userso2f4p0r9m0g4k2r1_source_reposl2mapconv2l2mapconv2geodata_srcMap.cpp
mov rcx, qword [rbp + 0x68]
call fcn.140003f20
lea rcx, [rbp + 0x40]
call fcn.1400b4ac0
test al, al
je 0x14001e5c5
lea rdx, [0x1400bc210]
mov rcx, qword [rbp + 0x68]
call fcn.140003f20
lea rcx, [rbp + 0x40]
call fcn.1400b4ac0
test al, al
je 0x14001e5e1
mov edx, 8
mov rcx, qword [rbp + 0x68]
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___int____ptr64]
lea rcx, [rbp + 0x40]
call fcn.1400b4ac0
test al, al
je 0x14001e5fe
lea rdx, [0x1400bc2a0]
mov rcx, qword [rbp + 0x68]
call fcn.140003f20
lea rcx, [rbp + 0x40]
call fcn.1400b4ac0
test al, al
je 0x14001e61b
lea rdx, str.Entity_must_have_mesh
mov rcx, qword [rbp + 0x68]
call fcn.140003f20
lea rcx, [rbp + 0x40]
call fcn.1400b4ac0
test al, al
je 0x14001e66d
mov rbx, qword [rbp + 0x68]
xor r8d, r8d
lea rdx, [rbp - 0x40]
call fcn.1400b4b50
nop
mov r8, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x14001e647
mov rax, qword [rax]
mov rdx, rax
mov rcx, rbx
call fcn.140004f80
lea rdx, [0x140003e00]
mov rcx, rax
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]
nop
lea rcx, [rbp - 0x40]
call fcn.140003b00
nop
lea rcx, [rbp + 0x48]
call fcn.140003b00
nop
lea rcx, [rbp]
call fcn.140003b00
mov rax, qword [r15]
mov r10, qword [rsp + 0x28]
movaps xmm0, xmmword [0x1401013f0]
movaps xmmword [rbp + 0xc0], xmm0
movaps xmm1, xmmword [0x140101460]
movaps xmmword [rbp + 0xd0], xmm1
movaps xmm0, xmmword [0x140101400]
movaps xmmword [rbp + 0xe0], xmm0
movaps xmm1, xmmword [0x140101650]
movaps xmmword [rbp + 0xf0], xmm1
xor ecx, ecx
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x80], xmm1
mov qword [rbp + 0x90], rcx
mov rcx, qword [rax + 0x38]
mov qword [rbp - 0x48], rcx
mov r9, qword [rax + 0x30]
mov qword [rsp + 0x78], r9
cmp r9, rcx
je 0x14001ee42
lea r8, [r15 + 0x10]
lea rax, [r10 + 0x20]
mov qword [rbp - 0x80], rax
movabs rdx, 0x2aaaaaaaaaaaaaab
movss xmm13, dword [0x1401012e8]
movss xmm10, dword [0x140101320]
xorps xmm14, xmm14
nop word [rax + rax]
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
mov rax, rdx
imul rcx
mov rdi, rdx
sar rdi, 1
mov rax, rdi
shr rax, 0x3f
add rdi, rax
mov qword [rbp - 0x58], rdi
lea rdx, [rbp + 0xc0]
lea rcx, [rbp - 0x40]
call fcn.14001f010
mov rdx, rax
mov r8, r9
lea rcx, [rbp + 0x40]
call fcn.14001f010
movss xmm6, dword [rbp + 0x40]
movss dword [rsp + 0x64], xmm6
movss dword [rbp - 0x40], xmm6
movss xmm0, dword [rbp + 0x44]
movss dword [rsp + 0x70], xmm0
movss dword [rbp - 0x3c], xmm0
movss xmm0, dword [rbp + 0x48]
movss dword [rsp + 0x6c], xmm0
movss dword [rbp - 0x38], xmm0
movss xmm0, dword [rbp + 0x50]
movss dword [rsp + 0x38], xmm0
movss dword [rbp - 0x34], xmm0
movss xmm0, dword [rbp + 0x54]
movss dword [rsp + 0x34], xmm0
movss dword [rbp - 0x30], xmm0
movss xmm0, dword [rbp + 0x58]
movss dword [rsp + 0x30], xmm0
movss dword [rbp - 0x2c], xmm0
movss xmm0, dword [rbp + 0x60]
movss dword [rsp + 0x48], xmm0
movss dword [rbp - 0x28], xmm0
movss xmm0, dword [rbp + 0x64]
movss dword [rsp + 0x44], xmm0
movss dword [rbp - 0x24], xmm0
movss xmm0, dword [rbp + 0x68]
movss dword [rsp + 0x40], xmm0
movss dword [rbp - 0x20], xmm0
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x98]
call fcn.14001f5a0
mov rcx, qword [r15]
mov r14, qword [rcx + 8]
mov rsi, qword [rcx]
cmp rsi, r14
je 0x14001eb1e
lea rbx, [rsi + 0x14]
movss xmm0, dword [rbp + 0x7c]
movss dword [rsp + 0x4c], xmm0
movss xmm0, dword [rbp + 0x78]
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [rbp + 0x74]
movss dword [rsp + 0x54], xmm0
movss xmm0, dword [rbp + 0x70]
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [rbp + 0x6c]
movss dword [rsp + 0x3c], xmm0
movss xmm4, dword [rbp + 0x5c]
movss dword [rsp + 0x68], xmm4
movss xmm1, dword [rbp + 0x4c]
movss dword [rsp + 0x20], xmm1
movss xmm9, dword [rbp + 0xb8]
movss xmm10, dword [rbp + 0xb4]
movss xmm11, dword [rbp + 0xb0]
movss xmm12, dword [rbp + 0xac]
movss xmm13, dword [rbp + 0xa8]
movss xmm14, dword [rbp + 0xa4]
movss xmm15, dword [rbp + 0xa0]
movss xmm0, dword [rbp + 0x9c]
movss dword [rsp + 0x5c], xmm0
movss xmm0, dword [rbp + 0x98]
movss dword [rsp + 0x60], xmm0
mov rdi, qword [rbp - 0x80]
nop dword [rax]
nop word [rax + rax]
movss xmm8, dword [rbx - 0xc]
movss xmm3, dword [rsi]
movss xmm7, dword [rbx - 0x10]
movaps xmm0, xmm1
mulss xmm0, xmm3
movaps xmm1, xmm3
mulss xmm1, dword [rsp + 0x6c]
movaps xmm2, xmm3
mulss xmm2, dword [rsp + 0x70]
mulss xmm3, xmm6
mulss xmm4, xmm7
movaps xmm5, xmm7
mulss xmm5, dword [rsp + 0x30]
movaps xmm6, xmm7
mulss xmm6, dword [rsp + 0x34]
addss xmm4, xmm0
addss xmm5, xmm1
addss xmm6, xmm2
mulss xmm7, dword [rsp + 0x38]
addss xmm7, xmm3
movaps xmm0, xmm8
mulss xmm0, dword [rsp + 0x3c]
movaps xmm1, xmm8
mulss xmm1, dword [rsp + 0x40]
movaps xmm2, xmm8
mulss xmm2, dword [rsp + 0x44]
mulss xmm8, dword [rsp + 0x48]
movss xmm3, dword [rsp + 0x4c]
addss xmm3, xmm0
movss xmm0, dword [rsp + 0x50]
addss xmm0, xmm1
movss xmm1, dword [rsp + 0x54]
addss xmm1, xmm2
addss xmm3, xmm4
addss xmm0, xmm5
addss xmm1, xmm6
addss xmm8, dword [rsp + 0x58]
addss xmm8, xmm7
movss dword [rbp - 0x78], xmm8
movss dword [rbp - 0x74], xmm1
movss dword [rbp - 0x70], xmm0
movss dword [rbp - 0x6c], xmm3
mov rdx, qword [rdi + 8]
cmp rdx, qword [rdi + 0x10]
je 0x14001e9bb
movss dword [rdx], xmm8
movss dword [rdx + 4], xmm1
movss dword [rdx + 8], xmm0
lea rax, [rdx + 0xc]
mov qword [rdi + 8], rax
jmp 0x14001e9c7
lea r8, [rbp - 0x78]
mov rcx, rdi
call fcn.14001f7a0
movss xmm3, dword [rbx - 4]
movss xmm2, dword [rbx - 8]
movss xmm4, dword [rbx]
movaps xmm6, xmm15
mulss xmm6, xmm2
movaps xmm0, xmm12
mulss xmm0, xmm3
addss xmm6, xmm0
movaps xmm1, xmm9
mulss xmm1, xmm4
addss xmm6, xmm1
movss xmm7, dword [rsp + 0x5c]
mulss xmm7, xmm2
movaps xmm0, xmm13
mulss xmm0, xmm3
addss xmm7, xmm0
movaps xmm1, xmm10
mulss xmm1, xmm4
addss xmm7, xmm1
movss xmm8, dword [rsp + 0x60]
mulss xmm8, xmm2
movaps xmm0, xmm14
mulss xmm0, xmm3
addss xmm8, xmm0
movaps xmm1, xmm11
mulss xmm1, xmm4
addss xmm8, xmm1
movaps xmm2, xmm6
mulss xmm2, xmm6
movaps xmm0, xmm7
mulss xmm0, xmm7
movaps xmm1, xmm8
mulss xmm1, xmm8
addss xmm1, xmm0
addss xmm1, xmm2
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x14001ea6d
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14001ea75
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [0x1401012e8]
divss xmm1, xmm0
mulss xmm6, xmm1
mulss xmm7, xmm1
mulss xmm8, xmm1
movss dword [rbp - 0x68], xmm8
movss dword [rbp - 0x64], xmm7
movss dword [rbp - 0x60], xmm6
mov rdx, qword [rbp + 0x88]
cmp rdx, qword [rbp + 0x90]
je 0x14001eac7
movss dword [rdx], xmm8
movss dword [rdx + 4], xmm7
movss dword [rdx + 8], xmm6
add qword [rbp + 0x88], 0xc
jmp 0x14001ead7
lea r8, [rbp - 0x68]
lea rcx, [rbp + 0x80]
call fcn.14001f8e0
add rsi, 0x18
add rbx, 0x18
cmp rsi, r14
movss xmm6, dword [rsp + 0x64]
movss xmm4, dword [rsp + 0x68]
movss xmm1, dword [rsp + 0x20]
jne 0x14001e8d0
movss xmm13, dword [0x1401012e8]
movss xmm10, dword [0x140101320]
xorps xmm14, xmm14
mov rdi, qword [rbp - 0x58]
mov r9, qword [rsp + 0x78]
mov r10, qword [rsp + 0x28]
xor esi, esi
mov rcx, qword [r15]
mov rax, qword [rcx + 0x20]
sub rax, qword [rcx + 0x18]
sar rax, 2
test rax, rax
je 0x14001ee0f
lea rbx, [r10 + 0x38]
nop dword [rax]
mov rax, qword [rcx + 0x18]
mov r15d, dword [rax + rsi*4]
mov r14d, dword [rax + rsi*4 + 4]
mov r12d, dword [rax + rsi*4 + 8]
lea r8, [r12*2]
add r8, r12
mov rdx, qword [rbp + 0x80]
lea rcx, [r14 + r14*2]
lea rax, [r15 + r15*2]
movss xmm7, dword [rdx + rcx*4 + 8]
addss xmm7, dword [rdx + rax*4 + 8]
movss xmm8, dword [rdx + rcx*4 + 4]
addss xmm8, dword [rdx + rax*4 + 4]
addss xmm7, dword [rdx + r8*4 + 8]
addss xmm8, dword [rdx + r8*4 + 4]
divss xmm7, xmm10
divss xmm8, xmm10
movss xmm9, dword [rdx + rcx*4]
addss xmm9, dword [rdx + rax*4]
addss xmm9, dword [rdx + r8*4]
divss xmm9, xmm10
movaps xmm1, xmm7
mulss xmm1, xmm7
movaps xmm0, xmm8
mulss xmm0, xmm8
movaps xmm2, xmm9
mulss xmm2, xmm9
addss xmm2, xmm0
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14001ebe7
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x14001ebf4
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
mov r10, qword [rsp + 0x28]
movaps xmm12, xmm13
divss xmm12, xmm0
mulss xmm7, xmm12
mulss xmm8, xmm12
mov r9, qword [r10 + 0x20]
lea rax, [rdi + r15]
lea rdx, [rax + rax*2]
lea rax, [rdi + r14]
lea r8, [rax + rax*2]
lea rax, [rdi + r12]
lea rcx, [rax + rax*2]
movss xmm5, dword [r9 + rcx*4 + 8]
movaps xmm4, xmm5
subss xmm4, dword [r9 + rdx*4 + 8]
movss xmm6, dword [r9 + rcx*4 + 4]
movaps xmm3, xmm6
subss xmm3, dword [r9 + rdx*4 + 4]
movss xmm2, dword [r9 + rcx*4]
movaps xmm1, xmm2
subss xmm1, dword [r9 + rdx*4]
subss xmm5, dword [r9 + r8*4 + 8]
subss xmm6, dword [r9 + r8*4 + 4]
subss xmm2, dword [r9 + r8*4]
movaps xmm10, xmm2
mulss xmm10, xmm3
movaps xmm0, xmm6
mulss xmm0, xmm1
subss xmm10, xmm0
movaps xmm11, xmm5
mulss xmm11, xmm1
mulss xmm2, xmm4
subss xmm11, xmm2
mulss xmm6, xmm4
mulss xmm5, xmm3
subss xmm6, xmm5
movaps xmm1, xmm10
mulss xmm1, xmm10
movaps xmm0, xmm11
mulss xmm0, xmm11
movaps xmm2, xmm6
mulss xmm2, xmm6
addss xmm2, xmm0
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14001eccd
xorps xmm0, xmm0
sqrtss xmm0, xmm2
jmp 0x14001ecd5
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm1, xmm13
divss xmm1, xmm0
mulss xmm10, xmm1
mulss xmm11, xmm1
mulss xmm7, xmm10
mulss xmm8, xmm11
mulss xmm6, xmm1
mulss xmm9, xmm12
mulss xmm6, xmm9
addss xmm6, xmm8
addss xmm6, xmm7
mov rdx, qword [rbx + 8]
comiss xmm6, xmm14
jb 0x14001ed68
lea eax, [rdi + r12]
mov dword [rsp + 0x20], eax
cmp rdx, qword [rbx + 0x10]
je 0x14001ed29
mov dword [rdx], eax
add qword [rbx + 8], 4
jmp 0x14001ed36
lea r8, [rsp + 0x20]
mov rcx, rbx
call fcn.14000a270
lea eax, [rdi + r14]
mov dword [rsp + 0x20], eax
mov rdx, qword [rbx + 8]
cmp rdx, qword [rbx + 0x10]
je 0x14001ed55
mov dword [rdx], eax
add qword [rbx + 8], 4
lea eax, [rdi + r15]
jmp 0x14001edb8
lea r8, [rsp + 0x20]
mov rcx, rbx
call fcn.14000a270
lea eax, [rdi + r15]
jmp 0x14001edb8
lea eax, [rdi + r15]
mov dword [rsp + 0x20], eax
cmp rdx, qword [rbx + 0x10]
je 0x14001ed7f
mov dword [rdx], eax
add qword [rbx + 8], 4
jmp 0x14001ed8c
lea r8, [rsp + 0x20]
mov rcx, rbx
call fcn.14000a270
lea eax, [rdi + r14]
mov dword [rsp + 0x20], eax
mov rdx, qword [rbx + 8]
cmp rdx, qword [rbx + 0x10]
je 0x14001eda7
mov dword [rdx], eax
add qword [rbx + 8], 4
jmp 0x14001edb4
lea r8, [rsp + 0x20]
mov rcx, rbx
call fcn.14000a270
lea eax, [rdi + r12]
mov rdx, qword [rbx + 8]
cmp rdx, qword [rbx + 0x10]
mov dword [rsp + 0x20], eax
je 0x14001edcf
mov dword [rdx], eax
add qword [rbx + 8], 4
jmp 0x14001eddc
lea r8, [rsp + 0x20]
mov rcx, rbx
call fcn.14000a270
add rsi, 3
mov r15, qword [rbp - 0x50]
mov rcx, qword [r15]
mov rax, qword [rcx + 0x20]
sub rax, qword [rcx + 0x18]
sar rax, 2
cmp rsi, rax
movss xmm10, dword [0x140101320]
mov r10, qword [rsp + 0x28]
jb 0x14001eb40
mov r9, qword [rsp + 0x78]
add r9, 0x40
mov qword [rsp + 0x78], r9
cmp r9, qword [rbp - 0x48]
movss xmm10, dword [0x140101320]
mov rax, qword [rbp - 0x80]
mov r10, qword [rsp + 0x28]
lea r8, [r15 + 0x10]
movabs rdx, 0x2aaaaaaaaaaaaaab
jne 0x14001e720
lea rcx, [rbp + 0x80]
call fcn.1400039f0
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.1400b5770
lea r11, [rsp + 0x2b0]
mov rbx, qword [r11 + 0x50]
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 rdi
pop rsi
pop rbp
ret