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

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 - 0x188]
sub rsp, 0x260
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 [0x1401cca00]
xor rax, rsp
mov qword [rbp + 0xb8], rax
mov rbx, qword [0x1402728c8]
xor r13d, r13d
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
lea rax, [0x1401a5a0c]
mov qword [rsp + 0x28], rax
movss xmm15, dword [0x1401ab270]
movss dword [rsp + 0x20], xmm15
movss xmm12, dword [0x1401ab254]
movaps xmm3, xmm12
movss xmm2, dword [rbx + 0x3d50]
lea rdx, [rbp - 0x70]
mov rcx, qword [rbx + 0x3d48]
call fcn.1400af810
movss xmm1, dword [rax]
movss xmm0, dword [rbx + 0x3d50]
addss xmm0, dword [rbx + 0x3958]
mulss xmm0, dword [0x140272940]
movss dword [0x140272c48], xmm1
movss dword [0x140272c4c], xmm0
lea rdx, [0x140272a10]
lea r8, [0x140272a64]
movss xmm2, dword [0x1401aafd0]
xorps xmm9, xmm9
movss xmm10, dword [0x1401ab09c]
movss xmm0, dword [0x1401ab204]
movss xmm11, dword [0x1401ab040]
nop dword [rax + rax]
mov ecx, dword [rdx - 0x54]
movzx eax, cl
xorps xmm6, xmm6
cvtsi2ss xmm6, rax
mulss xmm6, xmm2
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm4, xmm4
cvtsi2ss xmm4, rax
mulss xmm4, xmm2
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm5, xmm5
cvtsi2ss xmm5, rax
mulss xmm5, xmm2
shr ecx, 0x18
mov eax, ecx
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
mulss xmm3, xmm2
mulss xmm3, dword [rbx + 0x3908]
comiss xmm9, xmm6
jbe 0x140070faf
movaps xmm1, xmm9
jmp 0x140070fb7
movaps xmm1, xmm10
minss xmm1, xmm6
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si ecx, xmm1
comiss xmm9, xmm4
jbe 0x140070fd0
movaps xmm1, xmm9
jmp 0x140070fd8
movaps xmm1, xmm10
minss xmm1, xmm4
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si eax, xmm1
shl eax, 8
or ecx, eax
comiss xmm9, xmm5
jbe 0x140070ff6
movaps xmm1, xmm9
jmp 0x140070ffe
movaps xmm1, xmm10
minss xmm1, xmm5
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
comiss xmm9, xmm3
jbe 0x14007101c
movaps xmm1, xmm9
jmp 0x140071024
movaps xmm1, xmm10
minss xmm1, xmm3
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si eax, xmm1
shl eax, 0x18
or eax, ecx
mov dword [rdx], eax
mov ecx, dword [rdx - 0x50]
movzx eax, cl
xorps xmm6, xmm6
cvtsi2ss xmm6, rax
mulss xmm6, xmm2
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm4, xmm4
cvtsi2ss xmm4, rax
mulss xmm4, xmm2
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm5, xmm5
cvtsi2ss xmm5, rax
mulss xmm5, xmm2
shr ecx, 0x18
mov eax, ecx
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
mulss xmm3, xmm2
mulss xmm3, dword [rbx + 0x3908]
comiss xmm9, xmm6
jbe 0x140071097
movaps xmm1, xmm9
jmp 0x14007109f
movaps xmm1, xmm10
minss xmm1, xmm6
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si ecx, xmm1
comiss xmm9, xmm4
jbe 0x1400710b8
movaps xmm1, xmm9
jmp 0x1400710c0
movaps xmm1, xmm10
minss xmm1, xmm4
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si eax, xmm1
shl eax, 8
or ecx, eax
comiss xmm9, xmm5
jbe 0x1400710de
movaps xmm1, xmm9
jmp 0x1400710e6
movaps xmm1, xmm10
minss xmm1, xmm5
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
comiss xmm9, xmm3
jbe 0x140071104
movaps xmm1, xmm9
jmp 0x14007110c
movaps xmm1, xmm10
minss xmm1, xmm3
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si eax, xmm1
shl eax, 0x18
or eax, ecx
mov dword [rdx + 4], eax
mov ecx, dword [rdx - 0x4c]
movzx eax, cl
xorps xmm6, xmm6
cvtsi2ss xmm6, rax
mulss xmm6, xmm2
mov eax, ecx
shr eax, 8
movzx eax, al
xorps xmm4, xmm4
cvtsi2ss xmm4, rax
mulss xmm4, xmm2
mov eax, ecx
shr eax, 0x10
movzx eax, al
xorps xmm5, xmm5
cvtsi2ss xmm5, rax
mulss xmm5, xmm2
shr ecx, 0x18
mov eax, ecx
xorps xmm3, xmm3
cvtsi2ss xmm3, rax
mulss xmm3, xmm2
mulss xmm3, dword [rbx + 0x3908]
comiss xmm9, xmm6
jbe 0x140071180
movaps xmm1, xmm9
jmp 0x140071188
movaps xmm1, xmm10
minss xmm1, xmm6
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si ecx, xmm1
comiss xmm9, xmm4
jbe 0x1400711a1
movaps xmm1, xmm9
jmp 0x1400711a9
movaps xmm1, xmm10
minss xmm1, xmm4
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si eax, xmm1
shl eax, 8
or ecx, eax
comiss xmm9, xmm5
jbe 0x1400711c7
movaps xmm1, xmm9
jmp 0x1400711cf
movaps xmm1, xmm10
minss xmm1, xmm5
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si eax, xmm1
shl eax, 0x10
or ecx, eax
comiss xmm9, xmm3
jbe 0x1400711ed
movaps xmm1, xmm9
jmp 0x1400711f5
movaps xmm1, xmm10
minss xmm1, xmm3
mulss xmm1, xmm0
addss xmm1, xmm11
cvttss2si eax, xmm1
shl eax, 0x18
or eax, ecx
mov dword [rdx + 8], eax
add rdx, 0xc
cmp rdx, r8
jl 0x140070f50
mov rax, qword [rbx + 0x3fe0]
movss xmm8, dword [rax + 0x274]
subss xmm8, dword [rax + 0x4c]
movss xmm0, dword [rax + 0x270]
subss xmm0, dword [rax + 0x48]
movss dword [rsp + 0x68], xmm0
mov byte [rax + 0xcd], 1
mov rax, qword [rbx + 0x3fe0]
mov r14, qword [rax + 0x2c0]
mov qword [rsp + 0x58], r14
movss xmm14, dword [0x1402729a0]
movss dword [rsp + 0x64], xmm14
movss dword [rbp + 0x7c], xmm14
cmp byte [0x14027299c], r13b
je 0x14007129c
mov byte [0x14027299c], r13b
mov rax, qword [rbx + 0x3fe0]
mov dword [rax + 0xac], r13d
mov dword [rax + 0xb4], r13d
mov dword [rax + 0xbc], r13d
mov rax, qword [rbx + 0x3fe0]
movss xmm13, dword [rax + 0x118]
movss dword [rsp + 0x54], xmm13
movss xmm0, dword [rax + 0x11c]
movss dword [rbp - 0x58], xmm0
movss xmm0, dword [rax + 0x98]
movss dword [rsp + 0x60], xmm0
movss xmm6, dword [rax + 0x9c]
movaps xmm0, xmm6
divss xmm0, dword [0x140272c4c]
call sub.api_ms_win_crt_math_l1_1_0.dll_floorf
cvttss2si esi, xmm0
mov dword [rsp + 0x6c], esi
addss xmm8, xmm6
divss xmm8, dword [0x140272c4c]
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_floorf
cvttss2si r8d, xmm0
add r8d, esi
mov rcx, qword [0x140272950]
sub rcx, qword [0x140272948]
movabs r12, 0x2aaaaaaaaaaaaaab
mov rax, r12
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea eax, [rdx - 1]
cmp r8d, eax
cmovl eax, r8d
mov ebx, r13d
test eax, eax
cmovg ebx, eax
mov r9d, edx
lea r8, str.__d
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rbp + 0xa8]
call fcn.140001a60
mov rdi, qword [0x1402728c8]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
lea rax, [rbp + 0xa8]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm15
movaps xmm3, xmm12
movss xmm2, dword [rdi + 0x3d50]
lea rdx, [rbp - 0x70]
mov rcx, qword [rdi + 0x3d48]
call fcn.1400af810
movd xmm0, dword [0x1402729a4]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [rax]
movss dword [0x1402729a0], xmm0
mov rax, qword [0x140272950]
cmp qword [0x140272948], rax
je 0x140072525
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
lea rax, reloc.WLDAP32.dll_Ordinal_32
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm15
movaps xmm3, xmm12
movss xmm2, dword [rdi + 0x3d50]
lea rdx, [rbp + 0x70]
mov rcx, qword [rdi + 0x3d48]
call fcn.1400af810
movss xmm14, dword [rax]
movsxd rax, esi
mov qword [rsp + 0x70], rax
movsxd rcx, ebx
mov qword [rbp - 0x70], rcx
movabs rdi, 0x100000001b3
movabs r15, 0xcbf29ce484222325
cmp rax, rcx
jg 0x140072398
movaps xmm0, xmm13
addss xmm0, dword [rsp + 0x60]
movss dword [rsp + 0x50], xmm0
movzx ebx, byte [rbp + 0x78]
nop
movd xmm12, esi
cvtdq2ps xmm12, xmm12
mulss xmm12, dword [0x140272c4c]
addss xmm12, dword [rbp - 0x58]
addss xmm13, dword [0x1402729a0]
lea r15, [rax + rax*2]
mov qword [rbp + 0x48], r15
mov r12, qword [0x140272948]
mov qword [rbp + 0x80], r12
mov edx, esi
call fcn.14006eff0
mov dword [rbp - 0x48], esi
mov dword [rbp - 0x44], eax
lea rdx, [rbp - 0x48]
call fcn.1400765e0
addss xmm0, dword [0x1402729a0]
movss dword [rsp + 0x78], xmm0
lea rax, [rbp + 0x7c]
lea rcx, [rsp + 0x78]
movss xmm1, dword [rsp + 0x64]
comiss xmm1, xmm0
cmovbe rax, rcx
movss xmm0, dword [rax]
movss dword [rsp + 0x64], xmm0
movss dword [rbp + 0x7c], xmm0
mov edx, esi
call fcn.14006eff0
mov edi, eax
mov dword [rbp + 0xa0], esi
mov dword [rbp + 0xa4], eax
movaps xmm7, xmm15
movaps xmm6, xmm15
mov r8d, dword [0x140272964]
mov ecx, dword [0x140272960]
cmp ecx, esi
je 0x140071503
setl dl
jmp 0x140071509
cmp r8d, edi
setle dl
test dl, dl
je 0x140071530
cmp ecx, esi
jne 0x140071514
test r8d, r8d
setg al
test al, al
je 0x14007152c
lea rdx, [0x140272960]
call fcn.1400765e0
movaps xmm7, xmm0
jmp 0x140071530
movaps xmm7, xmm9
mov eax, dword [0x140272968]
mov edx, dword [0x14027296c]
cmp eax, esi
jne 0x140071542
test edx, edx
setg cl
test cl, cl
je 0x140071574
cmp eax, esi
jne 0x14007154f
cmp edx, edi
setl al
lea rdx, [rbp + 0xa0]
test al, al
lea rax, [0x140272968]
cmovne rdx, rax
call fcn.1400765e0
movaps xmm6, xmm0
mov eax, dword [0x140272968]
cmp eax, esi
jle 0x140071580
addss xmm6, dword [0x140272c48]
ucomiss xmm7, xmm15
jp 0x140071588
je 0x1400715f9
ucomiss xmm6, xmm15
jp 0x140071590
je 0x1400715f9
movss xmm8, dword [rsp + 0x54]
comiss xmm6, xmm7
jbe 0x140071600
movaps xmm2, xmm8
addss xmm2, dword [0x1402729a0]
movaps xmm0, xmm2
addss xmm0, xmm7
movss dword [rbp - 0x38], xmm0
movss dword [rbp - 0x34], xmm12
movaps xmm1, xmm12
addss xmm1, dword [0x140272c4c]
addss xmm2, xmm6
movss dword [rbp - 0x40], xmm2
movss dword [rbp - 0x3c], xmm1
mov dword [rsp + 0x28], r13d
movss dword [rsp + 0x20], xmm9
mov r9d, dword [0x140272a48]
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x38]
mov rcx, r14
call fcn.1400abb20
jmp 0x140071600
movss xmm8, dword [rsp + 0x54]
movss xmm6, dword [rsp + 0x50]
movss dword [rbp - 0x68], xmm6
movss dword [rbp - 0x64], xmm12
lea r8d, [rsi + 1]
mov r14d, r8d
mov eax, r8d
shr eax, 8
movzx edx, al
movzx eax, r8b
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
movabs r9, 0x100000001b3
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
and rdx, qword [0x140272c28]
add rdx, rdx
mov rcx, qword [0x140272c10]
mov rax, qword [rcx + rdx*8 + 8]
cmp rax, qword [0x140272c00]
je 0x1400716a1
mov rcx, qword [rcx + rdx*8]
cmp r14d, dword [rax + 0x10]
je 0x1400716a4
nop
cmp rax, rcx
je 0x1400716a1
mov rax, qword [rax + 8]
cmp r8d, dword [rax + 0x10]
jne 0x140071690
jmp 0x1400716a4
mov rax, r13
movss xmm7, dword [rsp + 0x68]
mov rdi, qword [rsp + 0x58]
test rax, rax
je 0x140071706
movaps xmm2, xmm12
addss xmm2, dword [0x140272c4c]
movss xmm0, dword [rsp + 0x60]
movaps xmm1, xmm0
addss xmm1, xmm0
movaps xmm0, xmm7
addss xmm0, xmm8
addss xmm1, xmm0
movss dword [rbp - 0x30], xmm1
movss dword [rbp - 0x2c], xmm2
mov dword [rsp + 0x28], r13d
movss dword [rsp + 0x20], xmm9
mov r9d, dword [0x140272a50]
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x68]
mov rcx, rdi
call fcn.1400abb20
mov rcx, qword [0x140272c38]
mov rax, qword [rcx + 8]
mov rsi, rcx
cmp byte [rax + 0x19], 0
jne 0x140071738
nop word [rax + rax]
cmp dword [rax + 0x20], r14d
jge 0x14007172c
mov rax, qword [rax + 0x10]
jmp 0x140071732
mov rsi, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140071720
cmp byte [rsi + 0x19], 0
jne 0x140071744
cmp r14d, dword [rsi + 0x20]
jge 0x140071747
mov rsi, rcx
cmp rsi, rcx
je 0x1400719cc
movaps xmm6, xmm12
addss xmm6, dword [0x140272c4c]
addss xmm7, xmm8
movss xmm1, dword [rsp + 0x60]
movaps xmm0, xmm1
addss xmm0, xmm1
addss xmm7, xmm0
movss dword [rbp - 0x28], xmm7
movss dword [rbp - 0x24], xmm6
mov dword [rsp + 0x28], r13d
movss dword [rsp + 0x20], xmm9
mov r9d, dword [0x140272a4c]
lea r8, [rbp - 0x28]
lea rdx, [rbp - 0x68]
mov rcx, rdi
call fcn.1400abb20
mov rcx, qword [0x1402728c8]
mov rax, qword [rcx + 0x3fe0]
movaps xmm5, xmm12
maxss xmm5, dword [rax + 0x25c]
maxss xmm8, dword [rax + 0x258]
minss xmm6, dword [rax + 0x264]
minss xmm7, dword [rax + 0x260]
movss xmm0, dword [rcx + 0x3970]
movaps xmm4, xmm6
addss xmm4, xmm0
movss xmm1, dword [rcx + 0x396c]
movaps xmm3, xmm7
addss xmm3, xmm1
movaps xmm2, xmm5
subss xmm2, xmm0
movaps xmm0, xmm8
subss xmm0, xmm1
movss xmm1, dword [rcx + 0xd9c]
comiss xmm1, xmm0
jb 0x1400719c6
movss xmm0, dword [rcx + 0xda0]
comiss xmm0, xmm2
jb 0x1400719c6
comiss xmm3, xmm1
jbe 0x1400719c6
comiss xmm4, xmm0
jbe 0x1400719c6
mov rax, qword [rcx + 0x4228]
movss xmm2, dword [rax + 0xc]
movaps xmm0, xmm2
addss xmm0, dword [rax + 0x14]
movss xmm3, dword [rax + 8]
movaps xmm1, xmm3
addss xmm1, dword [rax + 0x10]
comiss xmm0, xmm5
jbe 0x1400719c6
comiss xmm6, xmm2
jbe 0x1400719c6
comiss xmm1, xmm8
jbe 0x1400719c6
comiss xmm7, xmm3
jbe 0x1400719c6
xor ecx, ecx
call fcn.14008e1d0
mov rdi, qword [0x1402728c8]
mov dword [rsp + 0x78], r13d
movups xmm0, xmmword [rdi + 0x39d0]
movups xmmword [rsp + 0x7c], xmm0
lea rcx, [rdi + 0x4180]
lea rdx, [rsp + 0x78]
call fcn.1400a0580
mov dword [rdi + 0x39d0], 0x3f800000
mov dword [rdi + 0x39d4], 0x3e4ccccd
mov dword [rdi + 0x39d8], 0x3e4ccccd
mov dword [rdi + 0x39dc], 0x3f800000
mov edx, dword [rsi + 0x20]
lea rcx, str.Error_at_line__d:
call fcn.1400bc5f0
mov rdi, qword [0x1402728c8]
movsxd rax, dword [rdi + 0x4180]
lea rdx, [rax + rax*4]
mov rcx, qword [rdi + 0x4188]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, 0x39d
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
movups xmmword [rdi + rax*8], xmm0
dec dword [rdi + 0x4180]
mov rax, qword [rdi + 0x3fe0]
cmp byte [rax + 0xd0], 0
jne 0x14007193f
mov eax, dword [rax + 0x1d4]
neg eax
sbb ecx, ecx
add ecx, 6
call fcn.1400bed10
mov rdi, qword [0x1402728c8]
movaps xmm6, xmmword [0x1401ab490]
mov dword [rsp + 0x78], r13d
movups xmm0, xmmword [rdi + 0x39d0]
movups xmmword [rsp + 0x7c], xmm0
lea rcx, [rdi + 0x4180]
lea rdx, [rsp + 0x78]
call fcn.1400a0580
movups xmmword [rdi + 0x39d0], xmm6
lea rdx, [rsi + 0x28]
cmp qword [rdx + 0x18], 0xf
jbe 0x14007197d
mov rdx, qword [rdx]
lea rcx, [0x1401a492c]
call fcn.1400bc5f0
mov r8, qword [0x1402728c8]
movsxd rax, dword [r8 + 0x4180]
lea rdx, [rax + rax*4]
mov rcx, qword [r8 + 0x4188]
movsxd rax, dword [rcx + rdx*4 - 0x14]
add rax, 0x39d
add rax, rax
movups xmm0, xmmword [rcx + rdx*4 - 0x10]
movups xmmword [r8 + rax*8], xmm0
dec dword [r8 + 0x4180]
call fcn.14008b430
movss xmm6, dword [rsp + 0x50]
mov r9d, r14d
lea r8, str._d
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rbp + 0xa8]
call fcn.140001a60
mov rdi, qword [0x1402728c8]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
lea rax, [rbp + 0xa8]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm15
movss xmm8, dword [0x1401ab254]
movaps xmm3, xmm8
movss xmm2, dword [rdi + 0x3d50]
lea rdx, [rbp + 0x60]
mov rcx, qword [rdi + 0x3d48]
call fcn.1400af810
movss xmm0, dword [rsp + 0x54]
addss xmm0, dword [0x1402729a0]
subss xmm0, dword [rax]
movss dword [rbp - 0x20], xmm0
movss dword [rbp - 0x1c], xmm12
mov edx, dword [0x140272a54]
test edx, 0xff000000
je 0x140071ae7
lea rcx, [rbp + 0xa8]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x140071a70
lea rcx, [rbp + 0xa8]
add rcx, rax
lea rax, [rbp + 0xa8]
mov r14, qword [rsp + 0x58]
cmp rax, rcx
je 0x140071aec
mov rax, qword [r14 + 0x38]
movups xmm0, xmmword [r14 + 0x88]
movups xmmword [rsp + 0x78], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm9
mov qword [rsp + 0x38], rcx
lea rcx, [rbp + 0xa8]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], edx
lea r9, [rbp - 0x20]
movss xmm2, dword [rax + 0x10]
mov rdx, r14
mov rcx, qword [rax + 8]
call fcn.1400afc30
jmp 0x140071aec
mov r14, qword [rsp + 0x58]
mov eax, dword [rsp + 0x6c]
cmp dword [0x140272970], eax
jne 0x140071dbc
xor ecx, ecx
call fcn.14008be90
movzx edi, al
call fcn.140075170
test al, al
jne 0x140071c1e
movaps xmm7, xmm12
addss xmm7, dword [0x140272c4c]
addss xmm6, dword [rsp + 0x68]
addss xmm6, dword [rsp + 0x60]
movss dword [rbp - 0x18], xmm6
movss dword [rbp - 0x14], xmm7
mov r9d, edi
xor r9, 1
mov dword [rsp + 0x28], r13d
movss dword [rsp + 0x20], xmm9
lea rax, [0x140272a58]
mov r9d, dword [rax + r9*4]
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x68]
mov rcx, r14
call fcn.1400abb20
mov esi, dword [0x140272a60]
test esi, 0xff000000
je 0x140071c1e
movaps xmm1, xmm12
addss xmm1, xmm11
movss xmm0, dword [rsp + 0x50]
addss xmm0, xmm11
mov dword [rsp + 0x20], r13d
movaps xmm3, xmm10
mov rcx, r14
test byte [r14 + 0x30], 1
je 0x140071bc4
subss xmm7, xmm11
subss xmm6, xmm11
movss dword [rbp - 0x10], xmm6
movss dword [rbp - 0xc], xmm7
movss dword [rbp - 8], xmm0
movss dword [rbp - 4], xmm1
lea r8, [rbp - 0x10]
lea rdx, [rbp - 8]
jmp 0x140071bf0
subss xmm7, dword [0x1401ab03c]
subss xmm6, dword [0x1401ab03c]
movss dword [rbp], xmm6
movss dword [rbp + 4], xmm7
movss dword [rbp + 8], xmm0
movss dword [rbp + 0xc], xmm1
lea r8, [rbp]
lea rdx, [rbp + 8]
call fcn.1400ab340
movss dword [rsp + 0x28], xmm10
mov dword [rsp + 0x20], 1
mov r9d, esi
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.1400a9500
mov dword [r14 + 0x78], r13d
test dil, dil
je 0x140071dbc
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
mov rcx, rax
movabs rax, 0x346dc5d63886594b
imul rcx
mov rdi, rdx
sar rdi, 0xb
mov rax, rdi
shr rax, 0x3f
add rdi, rax
mov rsi, rdi
sub rsi, qword [0x140272c80]
cmp rsi, 0x190
jbe 0x140071dbc
movaps xmm7, xmm10
lea rdx, [0x140272970]
call fcn.14006ed80
movsxd r14, eax
lea rdx, [0x140272970]
call fcn.1400765e0
movaps xmm8, xmm0
cmp byte [0x140272998], 0
je 0x140071d4e
mov r8, qword [r12 + r15*8]
mov rcx, qword [r12 + r15*8 + 8]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r14d, edx
jge 0x140071d4e
lea rcx, [r14 + r14*2]
movzx eax, byte [r8 + rcx*4]
cmp al, 9
jne 0x140071d02
movd xmm6, dword [0x140272994]
cvtdq2ps xmm6, xmm6
mulss xmm6, xmm14
addss xmm0, xmm10
divss xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_floorf
movaps xmm7, xmm0
addss xmm7, xmm10
mulss xmm7, xmm6
subss xmm7, xmm8
jmp 0x140071d4e
mov byte [rbp + 0x78], al
mov byte [rbp + 0x79], 0
mov rax, qword [0x1402728c8]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
lea rcx, [rbp + 0x78]
mov qword [rsp + 0x28], rcx
movss dword [rsp + 0x20], xmm15
movss xmm3, dword [0x1401ab254]
movss xmm2, dword [rax + 0x3d50]
lea rdx, [rbp + 0x58]
mov rcx, qword [rax + 0x3d48]
call fcn.1400af810
movss xmm7, dword [rax]
addss xmm8, xmm13
movss dword [rbp + 0x18], xmm8
movss dword [rbp + 0x1c], xmm12
movaps xmm0, xmm12
addss xmm0, dword [0x140272c4c]
addss xmm8, xmm7
movss dword [rbp + 0x10], xmm8
movss dword [rbp + 0x14], xmm0
mov dword [rsp + 0x28], r13d
movss dword [rsp + 0x20], xmm9
mov r9d, dword [0x140272a44]
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x18]
mov r14, qword [rsp + 0x58]
mov rcx, r14
call fcn.1400abb20
movss xmm8, dword [0x1401ab254]
cmp rsi, 0x320
jbe 0x140071dbc
mov qword [0x140272c80], rdi
mov r11, qword [r12 + r15*8 + 8]
mov r10, qword [r12 + r15*8]
cmp r10, r11
jne 0x140071dd2
mov edi, dword [0x140272a10]
jmp 0x140071ddc
mov rdx, r10
call fcn.14006ff00
mov edi, eax
movaps xmm7, xmm9
mov r12d, r13d
mov r15, r13
sub r11, r10
movabs rax, 0x2aaaaaaaaaaaaaab
imul r11
sar rdx, 1
mov rcx, rdx
shr rcx, 0x3f
add rdx, rcx
je 0x140072277
nop dword [rax]
lea rax, [r15 + r15*2]
lea rsi, [r10 + rax*4]
mov rdx, rsi
call fcn.14006ff00
mov r14d, eax
cmp eax, edi
jne 0x140071e38
movzx ecx, byte [rsi]
cmp cl, 9
je 0x140071e38
cmp cl, 0x20
jne 0x140071f6c
cmp qword [0x140272c70], 0
je 0x140071f6c
movaps xmm1, xmm12
addss xmm1, xmm9
movaps xmm0, xmm13
addss xmm0, xmm7
movss dword [rbp + 0x20], xmm0
movss dword [rbp + 0x24], xmm1
lea rdx, [0x140272c60]
mov r8, qword [0x140272c60]
mov r9, qword [0x140272c78]
cmp r9, 0xf
cmova rdx, r8
test edi, 0xff000000
je 0x140071efe
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rdx + rcx], 0
jne 0x140071e90
add rcx, rdx
cmp rdx, rcx
je 0x140071efe
mov r8, qword [rsp + 0x58]
mov rax, qword [r8 + 0x38]
movups xmm0, xmmword [r8 + 0x88]
movups xmmword [rsp + 0x78], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm9
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], edi
lea r9, [rbp + 0x20]
movss xmm2, dword [rax + 0x10]
mov rdx, r8
mov rcx, qword [rax + 8]
call fcn.1400afc30
mov r9, qword [0x140272c78]
mov r8, qword [0x140272c60]
mov rdi, qword [0x1402728c8]
lea rax, [0x140272c60]
cmp r9, 0xf
cmova rax, r8
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm15
movaps xmm3, xmm8
movss xmm2, dword [rdi + 0x3d50]
lea rdx, [rbp + 0x50]
mov rcx, qword [rdi + 0x3d48]
call fcn.1400af810
addss xmm7, dword [rbp + 0x50]
lea rax, [0x140272c60]
cmp qword [0x140272c78], 0xf
cmova rax, qword [0x140272c60]
mov qword [0x140272c70], r13
mov byte [rax], 0
mov edi, r14d
mov dword [rsp + 0x78], r14d
movzx ecx, byte [rsi]
cmp cl, 9
jne 0x1400720a0
movaps xmm8, xmm7
movd xmm6, dword [0x140272994]
cvtdq2ps xmm6, xmm6
mulss xmm6, xmm14
addss xmm7, xmm10
divss xmm7, xmm6
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_floorf
movaps xmm7, xmm0
addss xmm7, xmm10
mulss xmm7, xmm6
inc r12d
inc r15
mov r14, qword [rsp + 0x58]
cmp byte [0x1402729bb], 0
je 0x140072231
mov rax, qword [0x1402728c8]
movss xmm3, dword [rax + 0x3d50]
addss xmm8, xmm13
addss xmm8, xmm10
movaps xmm2, xmm7
addss xmm2, xmm13
subss xmm2, xmm10
movaps xmm1, xmm12
addss xmm1, xmm9
movaps xmm0, xmm3
mulss xmm0, xmm11
addss xmm1, xmm0
movss dword [rbp + 0x28], xmm8
movss dword [rbp + 0x2c], xmm1
movss dword [rbp - 0x60], xmm2
movss dword [rbp - 0x5c], xmm1
mulss xmm3, dword [0x1401ab008]
subss xmm2, xmm3
movss dword [rbp + 0x30], xmm2
movaps xmm0, xmm1
subss xmm0, xmm3
movss dword [rbp + 0x34], xmm0
movss dword [rbp + 0x38], xmm2
addss xmm3, xmm1
movss dword [rbp + 0x3c], xmm3
movss dword [rsp + 0x20], xmm10
mov r9d, 0x90909090
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x28]
mov rcx, r14
call fcn.1400ab8b0
movss dword [rsp + 0x20], xmm10
mov r9d, 0x90909090
lea r8, [rbp + 0x30]
lea rdx, [rbp - 0x60]
mov rcx, r14
call fcn.1400ab8b0
movss dword [rsp + 0x20], xmm10
mov r9d, 0x90909090
lea r8, [rbp + 0x38]
lea rdx, [rbp - 0x60]
mov rcx, r14
call fcn.1400ab8b0
jmp 0x140072231
cmp cl, 0x20
jne 0x140072156
mov r14, qword [rsp + 0x58]
cmp byte [0x1402729bb], 0
je 0x140072146
mov rax, qword [0x1402728c8]
movss xmm2, dword [rax + 0x3d50]
movaps xmm3, xmm13
addss xmm3, xmm7
movaps xmm0, xmm14
mulss xmm0, xmm11
addss xmm3, xmm0
movaps xmm1, xmm12
addss xmm1, xmm9
mulss xmm2, xmm11
addss xmm1, xmm2
movss dword [rbp + 0x40], xmm3
movss dword [rbp + 0x44], xmm1
mov dword [rsp + 0x28], 3
movss xmm0, dword [0x1401ab148]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm9
movss xmm2, dword [0x1401ab0c0]
lea rdx, [rbp + 0x40]
mov rcx, r14
call fcn.1400aaf10
mov r9d, 0x80808080
mov r8d, dword [r14 + 0x78]
mov rdx, qword [r14 + 0x80]
mov rcx, r14
call fcn.1400aa430
mov dword [r14 + 0x78], r13d
addss xmm7, xmm14
inc r12d
inc r15
jmp 0x140072231
movzx eax, cl
and al, 0xfe
cmp al, 0xfc
jne 0x140072166
mov edi, 6
jmp 0x1400721a5
movzx eax, cl
and al, 0xfc
cmp al, 0xf8
jne 0x140072176
mov edi, 5
jmp 0x1400721a5
movzx eax, cl
and al, 0xf8
cmp al, 0xf0
jne 0x140072186
mov edi, 4
jmp 0x1400721a5
movzx eax, cl
and al, 0xf0
cmp al, 0xe0
jne 0x140072196
mov edi, 3
jmp 0x1400721a5
and cl, 0xe0
mov edi, r13d
cmp cl, 0xc0
sete dil
inc edi
lea rsi, [r15 + r15*2]
shl rsi, 2
add r12d, edi
mov eax, edi
add r15, rax
mov r14, qword [rbp + 0x48]
mov r13, qword [rbp + 0x80]
dec edi
mov rax, qword [r13 + r14*8]
movzx r9d, byte [rsi + rax]
lea rsi, [rsi + 0xc]
mov rcx, qword [0x140272c70]
mov rdx, qword [0x140272c78]
cmp rcx, rdx
jae 0x14007220c
lea rax, [rcx + 1]
mov qword [0x140272c70], rax
lea rax, [0x140272c60]
cmp rdx, 0xf
cmova rax, qword [0x140272c60]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140072221
movzx r8d, bl
mov edx, 1
lea rcx, [0x140272c60]
call fcn.140008f40
test edi, edi
jg 0x1400721c0
xor r13d, r13d
mov edi, dword [rsp + 0x78]
mov r14, qword [rsp + 0x58]
mov rax, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x80]
mov r10, qword [rcx + rax*8]
mov rcx, qword [rcx + rax*8 + 8]
sub rcx, r10
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r12d
cmp rax, rdx
movss xmm8, dword [0x1401ab254]
jb 0x140071e10
cmp qword [0x140272c70], 0
je 0x140072352
addss xmm12, xmm9
addss xmm13, xmm7
movss dword [rbp - 0x50], xmm13
movss dword [rbp - 0x4c], xmm12
lea rsi, [0x140272c60]
mov rdx, rsi
mov r8, qword [0x140272c60]
mov r9, qword [0x140272c78]
cmp r9, 0xf
cmova rdx, r8
test edi, 0xff000000
je 0x14007233d
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
inc rcx
cmp byte [rdx + rcx], 0
jne 0x1400722d0
add rcx, rdx
cmp rdx, rcx
je 0x14007233d
mov rax, qword [r14 + 0x38]
movups xmm0, xmmword [r14 + 0x88]
movups xmmword [rbp + 0x80], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm9
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rbp + 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], edi
lea r9, [rbp - 0x50]
movss xmm2, dword [rax + 0x10]
mov rdx, r14
mov rcx, qword [rax + 8]
call fcn.1400afc30
mov r9, qword [0x140272c78]
mov r8, qword [0x140272c60]
mov rax, rsi
cmp r9, 0xf
cmova rax, r8
mov qword [0x140272c70], r13
mov byte [rax], 0
mov esi, dword [rsp + 0x6c]
inc esi
mov dword [rsp + 0x6c], esi
mov rax, qword [rsp + 0x70]
inc rax
mov qword [rsp + 0x70], rax
cmp rax, qword [rbp - 0x70]
movss xmm13, dword [rsp + 0x54]
jle 0x140071450
movabs rdi, 0x100000001b3
movabs r15, 0xcbf29ce484222325
movabs r12, 0x2aaaaaaaaaaaaaab
mov rax, qword [0x1402728c8]
movss xmm0, dword [rax + 0xd9c]
movss xmm2, dword [rax + 0xda0]
movss xmm1, dword [0x1401ab29c]
comiss xmm0, xmm1
jb 0x1400723c5
comiss xmm2, xmm1
jb 0x1400723c5
mov cl, 1
jmp 0x1400723c7
xor cl, cl
test cl, cl
je 0x14007251e
movsd xmm0, qword [rax + 0xd9c]
movsd qword [rbp - 0x70], xmm0
lea r8, [rbp - 0x70]
lea rdx, [rbp + 0x58]
call fcn.14006e3f0
mov r8, rax
lea rdx, [rbp + 0x80]
call fcn.14006fdf0
nop
mov rbx, qword [rbp + 0x90]
test rbx, rbx
je 0x140072512
lea rdx, [rbp + 0x80]
mov rsi, qword [rbp + 0x80]
mov r14, qword [rbp + 0x98]
cmp r14, 0xf
cmova rdx, rsi
mov r9, r15
mov rcx, r13
test rbx, rbx
je 0x140072444
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, rdi
inc rcx
cmp rcx, rbx
jb 0x140072431
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0x60]
lea rcx, [0x140272ac8]
call fcn.140046e70
mov rcx, qword [rax + 8]
mov rdi, qword [0x140272ad0]
test rcx, rcx
cmovne rdi, rcx
cmp rdi, qword [0x140272ad0]
je 0x140072483
xor ecx, ecx
call fcn.14008e1d0
lea rcx, [rdi + 0x38]
jmp 0x1400724f5
lea rcx, [rbp + 0x80]
cmp r14, 0xf
cmova rcx, rsi
test rbx, rbx
je 0x1400724b5
movabs rdx, 0x100000001b3
movzx eax, byte [rcx + r13]
xor r15, rax
imul r15, rdx
inc r13
cmp r13, rbx
jb 0x1400724a1
mov r9, r15
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0x60]
lea rcx, [0x140272b08]
call fcn.140046e70
mov rcx, qword [rax + 8]
mov rbx, qword [0x140272b10]
test rcx, rcx
cmovne rbx, rcx
cmp rbx, qword [0x140272b10]
je 0x140072512
xor ecx, ecx
call fcn.14008e1d0
lea rcx, [rbx + 0x38]
cmp qword [rcx + 0x18], 0xf
jbe 0x1400724ff
mov rcx, qword [rcx]
mov r8d, 1
xor edx, edx
call fcn.1400bbe00
call fcn.14008b430
nop
lea rcx, [rbp + 0x80]
call fcn.140003a10
movss xmm14, dword [rsp + 0x64]
addss xmm14, dword [0x1401ab0d8]
movss dword [rsp + 0x70], xmm14
mov rcx, qword [0x140272950]
sub rcx, qword [0x140272948]
mov rax, r12
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
xorps xmm0, xmm0
js 0x140072563
cvtsi2ss xmm0, rdx
jmp 0x140072578
mov rax, rdx
shr rax, 1
and edx, 1
or rax, rdx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mulss xmm0, dword [0x140272c4c]
movss dword [rsp + 0x74], xmm0
lea rcx, [rsp + 0x70]
call fcn.1400beba0
cmp byte [0x14027299b], 0
je 0x1400725b8
call fcn.1400768a0
mov rcx, qword [0x1402728c8]
mov rcx, qword [rcx + 0x3fe0]
call fcn.14008b830
mov byte [0x14027299b], 0
mov rcx, qword [rbp + 0xb8]
xor rcx, rsp
call fcn.140162570
lea r11, [rsp + 0x260]
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