Function at 0x14015f440
Capabilities:
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x510
mov rax, qword [0x140283740]
xor rax, rsp
mov qword [rsp + 0x500], rax
mov r15d, r8d
mov dword [rsp + 0xb4], r8d
mov r14d, edx
mov dword [rsp + 0xb0], edx
mov r13, qword [0x140294ff0]
mov rsi, qword [r13 + 0x20]
mov rbx, qword [rsi + 8]
cmp byte [rbx + 0x19], 0
jne 0x14015f4c7
nop word [rax + rax]
mov r8, qword [rbx + 0x10]
lea rdx, [r13 + 0x20]
lea rcx, [r13 + 0x20]
call fcn.1400030e0
mov rcx, rbx
mov rbx, qword [rbx]
mov edx, Ordinal_41
call fcn.1401d5db4
cmp byte [rbx + 0x19], 0
je 0x14015f4a0
mov qword [rsi + 8], rsi
mov qword [rsi], rsi
mov qword [rsi + 0x10], rsi
xor esi, esi
mov qword [r13 + 0x28], rsi
mov edx, r15d
lea rcx, [rsp + 0x60]
call fcn.140003580
mov rbx, rax
mov edx, r14d
lea rcx, [rsp + 0x260]
call fcn.140003580
nop
lea r9d, [rsi + 0x11]
lea r8, str._9Moving_to_X:__2
mov rcx, rax
call fcn.14000eaa0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x40], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x30], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x40], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], sil
lea r8d, [rsi + 7]
lea rdx, str.__Y:__2
lea rcx, [rsp + 0x30]
call fcn.14000cc00
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xc0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xd0], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], sil
mov r9, rbx
lea r8, [rsp + 0xc0]
lea rcx, [rsp + 0x200]
call fcn.14000e720
lea rcx, [rsp + 0x200]
call fcn.140122ff0
nop
lea rcx, [rsp + 0xc0]
call fcn.14000d4f0
nop
lea rcx, [rsp + 0x30]
call fcn.14000d4f0
nop
lea rcx, [rsp + 0x260]
call fcn.14000d4f0
nop
lea rcx, [rsp + 0x60]
call fcn.14000d4f0
mov rdi, qword [0x140294ff0]
mov qword [rsp + 0xa8], rdi
movss xmm0, dword [rdi + 0x115]
mulss xmm0, dword [0x140257d50]
cvttss2si ebx, xmm0
mov dword [rsp + 0xb8], ebx
movss xmm0, dword [rdi + 0x119]
mulss xmm0, dword [0x140257d50]
cvttss2si ebx, xmm0
mov dword [rsp + 0xa4], ebx
mov dword [rsp + 0xa0], esi
xorps xmm1, xmm1
movups xmmword [rsp + 0x2a0], xmm1
movups xmmword [rsp + 0x2b0], xmm1
movups xmmword [rsp + 0x2c0], xmm1
movups xmmword [rsp + 0x2d0], xmm1
movups xmmword [rsp + 0x2f0], xmm1
movups xmmword [rsp + 0x300], xmm1
movups xmmword [rsp + 0x310], xmm1
mov qword [rsp + 0x2d8], rsi
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x2e0], xmm0
mov qword [rsp + 0x2f0], rsi
mov qword [rsp + 0x2f8], rsi
mov qword [rsp + 0x300], rsi
mov qword [rsp + 0x308], rsi
mov dword [rsp + 0x318], 4
lea rbx, vtable.std::_Func_impl_no_alloc_unsigned_int____cdecl___struct_AStar::Vec2i__struct_AStar::Vec2i___unsigned_int__struct_AStar::Vec2i__struct_AStar::Vec2i_.0
mov qword [rsp + 0xe0], rbx
lea rax, [0x1400025d0]
mov qword [rsp + 0xe8], rax
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x118], rax
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x280], rax
lea rax, [rsp + 0x160]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x198], rsi
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0xe0]
call fcn.140003170
mov qword [rsp + 0x198], rax
lea rdx, [rsp + 0x160]
lea rcx, [rsp + 0x2a0]
call fcn.140002800
nop
mov rcx, qword [rsp + 0x198]
test rcx, rcx
je 0x14015f744
mov rax, qword [rcx]
lea rdx, [rsp + 0x160]
cmp rcx, rdx
setne dl
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
mov qword [rsp + 0x198], rsi
mov rcx, qword [rsp + 0x118]
test rcx, rcx
je 0x14015f76d
mov rax, qword [rcx]
lea rdx, [rsp + 0xe0]
cmp rcx, rdx
setne dl
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
mov qword [rsp + 0x118], rsi
movdqa xmm0, xmmword [0x1402580f0]
movdqa xmmword [rsp + 0x220], xmm0
movdqa xmm1, xmmword [0x140258150]
movdqa xmmword [rsp + 0x230], xmm1
movdqa xmm0, xmmword [0x140258170]
movdqa xmmword [rsp + 0x240], xmm0
movdqa xmm1, xmmword [0x1402587a0]
movdqa xmmword [rsp + 0x250], xmm1
mov r8d, 8
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0x2e0]
call fcn.140002ab0
nop
mov eax, dword [rdi + 0x12e]
mov dword [rsp + 0x50], eax
mov eax, dword [rdi + 0x132]
mov dword [rsp + 0x54], eax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x310], rax
mov qword [rsp + 0x120], rbx
lea rax, [0x140002600]
mov qword [rsp + 0x128], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x158], rax
lea rax, [rsp + 0x120]
mov qword [rsp + 0x280], rax
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x1e8], rsi
lea rdx, [rsp + 0x1b0]
lea rcx, [rsp + 0x120]
call fcn.140003170
mov qword [rsp + 0x1e8], rax
lea rdx, [rsp + 0x1b0]
lea rcx, [rsp + 0x2a0]
call fcn.140002800
nop
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x14015f88f
mov rax, qword [rcx]
lea rdx, [rsp + 0x1b0]
cmp rcx, rdx
setne dl
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
nop
mov rcx, qword [rsp + 0x158]
test rcx, rcx
je 0x14015f8b0
mov rax, qword [rcx]
lea rdx, [rsp + 0x120]
cmp rcx, rdx
setne dl
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
mov dword [rsp + 0x318], 4
lea rdx, str._A__Generate_path_..._n
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14000db30
mov r12d, esi
movabs r10, 0xcbf29ce484222325
movabs r9, 0x100000001b3
nop word [rax + rax]
mov rax, qword [0x140294ff0]
cmp r12d, dword [rax + 0x12e]
jae 0x14015fbaa
mov r15d, esi
nop word [rax + rax]
mov rax, qword [0x140294ff0]
cmp r15d, dword [rax + 0x132]
jae 0x14015fba2
imul eax, r15d, 0x64
add eax, r12d
mov r8d, eax
shr eax, 8
movzx edx, al
movzx eax, r8b
xor rax, r10
imul rax, r9
xor rdx, rax
imul rdx, r9
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r9
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, r9
mov rax, qword [rdi + 0x1c2]
and rax, rdx
add rax, rax
mov rcx, qword [rdi + 0x1aa]
mov rbx, qword [rcx + rax*8 + 8]
cmp rbx, qword [rdi + 0x19a]
je 0x14015f99f
mov rax, qword [rcx + rax*8]
nop word [rax + rax]
cmp r8d, dword [rbx + 0x10]
je 0x14015f9a2
cmp rbx, rax
jne 0x14015fb99
mov rbx, rsi
test rbx, rbx
jne 0x14015f9ae
mov rbx, qword [rdi + 0x19a]
movzx r8d, word [rbx + 0x22]
movzx ecx, r8b
xor rcx, r10
imul rcx, r9
mov eax, r8d
shr rax, 8
xor rcx, rax
imul rcx, r9
mov eax, r8d
shr rax, 0x10
xor rcx, rax
imul rcx, r9
mov eax, r8d
shr rax, 0x18
xor rcx, rax
imul rcx, r9
mov rdx, qword [r13 + 0x598]
and rdx, rcx
add rdx, rdx
mov rcx, qword [r13 + 0x580]
mov rax, qword [rcx + rdx*8 + 8]
cmp rax, qword [r13 + 0x570]
je 0x14015fa1f
mov rcx, qword [rcx + rdx*8]
nop
cmp r8d, dword [rax + 0x10]
je 0x14015fa22
cmp rax, rcx
jne 0x14015fb90
mov rax, rsi
test rax, rax
jne 0x14015fa2e
mov rax, qword [r13 + 0x570]
movzx ecx, byte [rax + 0x80]
test cl, cl
je 0x14015fb74
cmp cl, 1
je 0x14015fb20
cmp cl, 2
je 0x14015fb74
cmp cl, 3
jne 0x14015fb05
mov rdx, qword [0x140294ff0]
add rdx, 0xcd
lea rcx, [rsp + 0xc0]
call fcn.14000cf90
mov rdi, rax
mov r14, qword [rax + 0x10]
mov rcx, rax
mov rsi, qword [rax + 0x18]
cmp rsi, 0xf
jbe 0x14015fa8a
mov rcx, qword [rax]
mov qword [rsp + 0x20], 2
lea r9, [0x140256510]
mov rdx, r14
call fcn.14000dfc0
cmp rax, 0xffffffffffffffff
jne 0x14015faef
mov rcx, rdi
cmp rsi, 0xf
jbe 0x14015fab4
mov rcx, qword [rdi]
mov qword [rsp + 0x20], 2
lea r9, [0x140256514]
mov rdx, r14
call fcn.14000dfc0
cmp rax, 0xffffffffffffffff
jne 0x14015faef
mov rcx, rdi
call fcn.14000d4f0
xor esi, esi
mov ecx, 0x80
cmp word [rbx + 0x2f], cx
mov rdi, qword [rsp + 0xa8]
jmp 0x14015fb16
mov rcx, rdi
call fcn.14000d4f0
xor esi, esi
mov eax, esi
mov rdi, qword [rsp + 0xa8]
jmp 0x14015fb1b
cmp cl, 4
jne 0x14015fb11
cmp word [rbx + 0x2f], 0x40
jmp 0x14015fb16
cmp word [rbx + 0x22], 0
mov eax, esi
setne al
cmp eax, 1
jne 0x14015fb74
mov dword [rsp + 0x50], r12d
mov dword [rsp + 0x54], r15d
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x280], rax
mov rcx, qword [rsp + 0x300]
cmp rcx, qword [rsp + 0x308]
je 0x14015fb57
mov qword [rcx], rax
add qword [rsp + 0x300], 8
jmp 0x14015fb74
lea r8, [rsp + 0x280]
mov rdx, qword [rsp + 0x300]
lea rcx, [rsp + 0x2f8]
call fcn.140002f40
inc r15d
movabs r9, 0x100000001b3
movabs r10, 0xcbf29ce484222325
jmp 0x14015f910
mov rax, qword [rax + 8]
jmp 0x14015fa10
mov rbx, qword [rbx + 8]
jmp 0x14015f990
inc r12d
jmp 0x14015f8f0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x288], xmm0
mov qword [rsp + 0x298], rax
mov r14d, dword [rsp + 0xb0]
mov dword [rsp + 0xa8], r14d
mov r15d, dword [rsp + 0xb4]
mov dword [rsp + 0xac], r15d
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0xa4]
mov dword [rsp + 0x54], eax
mov r9, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x50]
lea rdx, [rsp + 0x288]
lea rcx, [rsp + 0x2a0]
call fcn.1400020e0
nop
mov rcx, qword [rsp + 0x288]
cmp dword [rcx], r14d
je 0x14015ff81
cmp dword [rcx + 4], r15d
je 0x14015ff81
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rsi
mov r8d, reloc.WS2_32.dll_listen
lea rdx, str.OnTextOverlay
lea rcx, [rsp + 0x30]
call fcn.140004020
nop
lea r14, [0x1400f9f10]
mov qword [rsp + 0x20], r14
lea r9, [0x1400f9610]
mov edx, 0x40
lea r8d, [rdx - 0x39]
lea rcx, [rsp + 0x340]
call fcn.1401d627c
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x80], xmm0
movdqa xmm1, xmmword [0x140258120]
movdqa xmmword [rsp + 0x90], xmm1
mov byte [rsp + 0x80], 0
mov dword [rsp + 0x60], 2
lea r9, [rsp + 0x30]
cmp qword [rsp + 0x48], 0xf
cmova r9, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x40]
lea rcx, [rsp + 0x80]
cmp rbx, 0xf
ja 0x14015fcf4
mov qword [rsp + 0x90], rbx
mov r8, rbx
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
mov byte [rsp + rbx + 0x80], 0
jmp 0x14015fcfd
mov rdx, rbx
call fcn.14000e1f0
nop
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x340], eax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x348], rax
movaps xmm0, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x350], xmm0
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x360]
call fcn.14000cd50
nop
lea rcx, [rsp + 0x80]
call fcn.14000d4f0
nop
lea rcx, [rsp + 0x30]
call fcn.14000d4f0
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rsi
mov r8d, Ordinal_32
lea rdx, str._4Cant_findpath_to_that_way.
lea rcx, [rsp + 0x30]
call fcn.140004020
nop
mov dword [rsp + 0x380], 2
lea r9, [rsp + 0x30]
cmp qword [rsp + 0x48], 0xf
cmova r9, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x3b8]
cmp rdi, rax
ja 0x14015fdd9
lea rbx, [rsp + 0x3a0]
cmp rax, 0xf
cmova rbx, qword [rsp + 0x3a0]
mov qword [rsp + 0x3b0], rdi
mov r8, rdi
mov rdx, r9
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + rdi], 0
jmp 0x14015fdea
mov rdx, rdi
lea rcx, [rsp + 0x3a0]
call fcn.14000e1f0
nop
lea rcx, [rsp + 0x30]
call fcn.14000d4f0
mov dword [rsp + 0x20], esi
mov r9d, 0xffffffff
lea r8, [rsp + 0x340]
mov dl, 1
mov rcx, qword [0x140294ff0]
call fcn.14015f180
nop
mov r9, r14
mov edx, 0x40
lea r8d, [rdx - 0x39]
lea rcx, [rsp + 0x340]
call fcn.1401d61a4
nop
mov rcx, qword [rsp + 0x288]
test rcx, rcx
je 0x14015fe94
mov rax, qword [rsp + 0x298]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14015fe7b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14015fe7b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401d5db4
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x288], xmm0
mov qword [rsp + 0x298], rsi
mov rcx, qword [rsp + 0x2f8]
test rcx, rcx
je 0x14015fef6
mov rax, qword [rsp + 0x308]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14015fed9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14015ff3b
call fcn.1401d5db4
mov qword [rsp + 0x2f8], rsi
mov qword [rsp + 0x300], rsi
mov qword [rsp + 0x308], rsi
mov rcx, qword [rsp + 0x2e0]
test rcx, rcx
je 0x14015ff5b
mov rax, qword [rsp + 0x2f0]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14015ff42
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14015ff42
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401d5db4
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x2e0], xmm0
mov qword [rsp + 0x2f0], rsi
mov rcx, qword [rsp + 0x2d8]
test rcx, rcx
je 0x14015ff7c
mov rax, qword [rcx]
lea rdx, [rsp + 0x2a0]
cmp rcx, rdx
setne dl
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
jmp 0x1401603ef
mov rdi, rcx
mov r15, qword [rsp + 0x290]
lea r14, [0x1400f9f10]
cmp rdi, r15
je 0x1401602a9
mov qword [rsp + 0x61], rsi
mov word [rsp + 0x69], si
mov byte [rsp + 0x6b], 0
mov dword [rsp + 0x70], esi
mov qword [rsp + 0x80], rsi
mov dword [rsp + 0x88], esi
mov qword [rsp + 0x94], rsi
mov byte [rsp + 0x60], 0
mov dword [rsp + 0x74], 0x336
mov edx, dword [rdi]
mov eax, edx
shl eax, 5
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x78], xmm0
mov ecx, dword [rdi + 4]
mov eax, ecx
shl eax, 5
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x7c], xmm0
mov dword [rsp + 0x8c], edx
mov dword [rsp + 0x90], ecx
mov dword [rsp + 0x6c], reloc.WLDAP32.dll_Ordinal_32
mov rcx, qword [0x140294ff0]
mov rsi, qword [rcx + 0x10]
mov rbx, qword [rcx + 8]
test rsi, rsi
je 0x1401600c8
test rbx, rbx
je 0x1401600c8
mov edx, 0x41
xor ecx, ecx
lea r8d, [rdx - 0x40]
call fcn.140112c10
mov r8, rax
mov rdx, qword [rax + 0x10]
mov dword [rdx], 4
movups xmm0, xmmword [rsp + 0x60]
movups xmmword [rdx + 4], xmm0
movups xmm1, xmmword [rsp + 0x70]
movups xmmword [rdx + 0x14], xmm1
movups xmm0, xmmword [rsp + 0x80]
movups xmmword [rdx + 0x24], xmm0
movsd xmm1, qword [rsp + 0x90]
movsd qword [rdx + 0x34], xmm1
mov eax, dword [rsp + 0x98]
mov dword [rdx + 0x3c], eax
xor eax, eax
mov byte [rdx + 0x40], al
mov rcx, rsi
call fcn.140112ea0
test eax, eax
je 0x1401600a5
mov edx, eax
lea rcx, str.e_94_1_1m_SERVER_:e_0m_Error_sending_packet__code:__d_n
call fcn.140003320
call qword [sym.imp.WINMM.dll_timeGetTime]
sub eax, dword [0x1402948f0]
mov dword [rbx + 0x40], eax
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.1401162a0
mov rcx, qword [0x140294ff0]
movzx eax, byte [rcx + 0x82]
mov ebx, dword [rsp + 0xa0]
xor esi, esi
cmp ebx, eax
jl 0x140160273
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x48], rsi
lea r8d, [rsi + 8]
lea rdx, str.OnSetPos
lea rcx, [rsp + 0x30]
call fcn.140004020
nop
mov qword [rsp + 0x20], r14
lea r9, [0x1400f9610]
lea edx, [rsi + 0x40]
lea r8d, [rsi + 7]
lea rcx, [rsp + 0x340]
call fcn.1401d627c
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], rsi
mov qword [rsp + 0x98], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x80], sil
mov dword [rsp + 0x60], 2
lea r9, [rsp + 0x30]
cmp qword [rsp + 0x48], 0xf
cmova r9, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x40]
lea rcx, [rsp + 0x80]
cmp rbx, 0xf
ja 0x140160199
mov qword [rsp + 0x90], rbx
mov r8, rbx
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
mov byte [rsp + rbx + 0x80], sil
jmp 0x1401601a2
mov rdx, rbx
call fcn.14000e1f0
nop
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x340], eax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x348], rax
movaps xmm0, xmmword [rsp + 0x70]
movaps xmmword [rsp + 0x350], xmm0
lea rdx, [rsp + 0x80]
lea rcx, [rsp + 0x360]
call fcn.14000cd50
nop
lea rcx, [rsp + 0x80]
call fcn.14000d4f0
nop
lea rcx, [rsp + 0x30]
call fcn.14000d4f0
mov eax, dword [rdi]
shl eax, 5
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [rdi + 4]
shl eax, 5
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mov dword [rsp + 0x380], 3
movss dword [rsp + 0x390], xmm1
movss dword [rsp + 0x394], xmm0
mov dword [rsp + 0x20], 0xffffffff
mov rcx, qword [0x140294ff0]
mov r9d, dword [rcx + 0x10d]
lea r8, [rsp + 0x340]
mov dl, 1
call fcn.14015f180
mov ebx, esi
mov r9, r14
mov edx, 0x40
lea r8d, [rdx - 0x39]
lea rcx, [rsp + 0x340]
call fcn.1401d61a4
nop
mov rcx, qword [0x140294ff0]
inc ebx
mov dword [rsp + 0xa0], ebx
movzx eax, word [rcx + 0x80]
mov qword [rsp + 0x280], rax
lea rcx, [rsp + 0x280]
call fcn.14010d5e0
add rdi, 8
mov rcx, qword [rsp + 0x288]
jmp 0x14015ff93
test rcx, rcx
je 0x140160306
mov rax, qword [rsp + 0x298]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401602ed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1401602ed
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401d5db4
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x288], xmm0
mov qword [rsp + 0x298], rsi
mov rcx, qword [rsp + 0x2f8]
test rcx, rcx
je 0x140160368
mov rax, qword [rsp + 0x308]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14016034b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401603ad
call fcn.1401d5db4
mov qword [rsp + 0x2f8], rsi
mov qword [rsp + 0x300], rsi
mov qword [rsp + 0x308], rsi
mov rcx, qword [rsp + 0x2e0]
test rcx, rcx
je 0x1401603cd
mov rax, qword [rsp + 0x2f0]
sub rax, rcx
sar rax, 3
lea rdx, [rax*8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401603b4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1401603b4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1401d5db4
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x2e0], xmm0
mov qword [rsp + 0x2f0], rsi
mov rcx, qword [rsp + 0x2d8]
test rcx, rcx
je 0x1401603ef
mov rax, qword [rcx]
lea rdx, [rsp + 0x2a0]
cmp rcx, rdx
setne dl
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
nop
mov rcx, qword [rsp + 0x500]
xor rcx, rsp
call fcn.1401d5b10
lea r11, [rsp + 0x510]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret